Yanıtlar:
Coğrafi işlemler için kendi GUI'nizi kullanma ihtiyacını sorgularım.
Coğrafi işleme aracı fikri, standart arayüzlerden (mesajlar için etkinleştirildiyse GP ilerleme iletişim kutusu ve bir ilerleme iletişim kutusu, parametreleri ayarlamak ve aracı çalıştırmak için GP araç iletişim kutusu) geçmesi ve her şeyi atlatmak için davayı kullanın.
Sonuçta: hepsi sizin için en iyi olan şeyin meselesidir.
PyQT'nin ArcMap ve kendi olay döngülerine sahip diğer programlarda Wx veya Tk'den biraz daha istikrarlı bir şekilde çalıştığını söyleyemedim. Wx ve Tk programları, bir işlemde çalışan ve diğer GUI programlarındaki olay döngüleriyle hatalı davranan tek kullanıcı arabirimi olmasını bekleme eğilimindedir.
Jason'la beraberim - ArcGIS coğrafi işlem ilerleme iletişim kutusu (en azından 9.3.1'de, 10'u bilmiyorum) gereksinimlerinize uyum sağlamak için biraz özelleştirilebildiğinden, gerçekten bir coğrafi işlem GUI'sinin gerekliliğini düşünmelisiniz. mesajlar, günlük dosyaları, ilerleme çubukları vb.).
Deneyimlerime göre, Tkinter anlaşılması kolay ama çok yeni tasarımlar isterken karmaşık. Ayrıca, ArcGIS (pencerelerin kaybolması ve benzeri) ile çok iyi etkileşime girmediği zamanlar vardır. EASYGUI adı verilen ve Tkinter'e dayanan ve kontrolü çok daha kolay ve daha kolay olan bir "basitleştirilmiş" GUI kütüphanesi var. Onunla biraz oynadım ve Tkinter'den çok daha dostça buldum.
Ne yapmak istediğinizi denedim ve Jason'ın hakkı - yerleşik araçları kullanın. Arcmap işlemi içinde herhangi bir python gui widget'ı kümesini çalıştırmaya çalışırsanız, çeşitli türlerin sorunuyla karşılaşırsınız - denedim. GUI'nizi işlem dışında çalıştırmak ve araçları çalıştırmak için IGeoprocessor kullanarak COM Arcobjects aracılığıyla Arcmap ile tekrar konuşmak en iyisidir. Ancak nesneniz yalnızca coğrafi işleme araçlarını ve komut dosyalarını çalıştırıyorsa, kendi araç kutusu araçlarınızı oluşturmaktan ve standart araç arabirimlerini kullanmaktan daha iyisini yapamazsınız.