Jawaban:
Saya akan mempertanyakan kebutuhan untuk menggunakan GUI Anda sendiri untuk Geoprocessing.
Gagasan alat geoprocessing adalah bahwa ia melewati antarmuka standar (dialog progres GP jika diaktifkan untuk pesan dan dialog progres, dialog alat GP untuk mengatur parameter dan menjalankan alat, dll) dan saya ingin mendengar gunakan case untuk mencoba menghindari itu semua.
Semua dalam semua: itu semua masalah yang paling cocok untuk Anda.
Saya gagal menyebutkan bahwa PyQT tampaknya bekerja dengan cara yang sedikit lebih stabil di ArcMap dan program lain dengan loop acara mereka sendiri daripada Wx atau Tk. Program Wx dan Tk cenderung berharap menjadi satu-satunya utas ui yang berjalan dalam suatu proses dan bertingkah dengan loop acara di program GUI lainnya.
Saya dengan Jason - Anda harus benar-benar mempertimbangkan perlunya GUI geoprocessing, karena dialog progres geoprocessing ArcGIS (setidaknya di 9.3.1, tidak tahu tentang 10) dapat dikustomisasi sedikit untuk menyesuaikan dengan kebutuhan Anda (menambahkan pesan, file log, bilah progres, dan semacamnya).
Dari pengalaman saya, Tkinter mudah dimengerti tetapi rumit ketika menginginkan desain yang sangat out-of-the-box. Juga, ada saat-saat itu tidak berinteraksi dengan sangat baik dengan ArcGIS (windows menghilang dan semacamnya). Ada perpustakaan GUI "disederhanakan" yang disebut EASYGUI yang didasarkan pada Tkinter, dan jauh lebih bagus dan lebih mudah dikendalikan. Saya bermain dengannya sedikit dan menemukan itu jauh lebih ramah daripada Tkinter.
Saya sudah mencoba apa yang ingin Anda lakukan, dan Jason benar - gunakan alat bawaan. Jika Anda mencoba dan menjalankan hampir semua widget python gui di dalam proses Arcmap, Anda akan mengalami berbagai macam masalah - saya sudah mencobanya. Terbaik untuk menjalankan proses GUI Anda di luar, dan berbicara kembali ke Arcmap melalui COM Arcobjects, menggunakan IGeoprocessor untuk menjalankan alat. Tetapi jika objek Anda hanya menjalankan alat dan skrip geoprocessing, Anda benar-benar tidak bisa melakukan lebih baik daripada membangun alat toolbox Anda sendiri dan menggunakan antarmuka alat standar.