Dobry den,
myslim si, ze problem, ktery popisujete, je problem prekreslovani, tzn.
aplikace se musi vratit do mainloop, aby se okno/okna prekreslila.
Muzete prosim udelat mensi pokus a pridat radek wx.Yield() za radek s
dlg.Show(True)? Tipuji, ze ted uz dialog bude vypadat dobre. Nasleduje
pak ale dalsi problem, ze kdyz aplikaci prekryjete a nasledne odkryjete
jinym oknem. Pokud chcete resit i toto, tak me napadaji dve reseni:
* prepsat provadeni popen do threadu, anebo
* pokud je prikaz "Cmd" plodny a porad neco pise na vystup, muze se
jeho vystup cist po jednom znaku a pokazde zavolat wx.Yield()
Jinak pozor na wx.Yield(). Pokud chcete, aby uzivatel behem celeho
procesu nemohl nic udelat, bude nutne udelat opatreni, jako vypnout
tlacitka a podobne.
Leos
[EMAIL PROTECTED] wrote:
> Zdravim, mam takovy problem. Mam aplikaci ve wxPythonu. Po kliknuti na
> tlacitko provedu nejaky prikaz cmd pomoci popen. Rad bych, aby po dobu, nez
> se prikaz provede zobrazil nejaky frame (miniframe), ktery by jen napsal neco
> jako "Prosim cekejte...". Po skonceni prikazu cmd by se miniframe zase
> zavrel. Toto jsem realizoval pomoci miniframe. Pri volani prikazu to pak
> vypada takto:
>
> dlg = WaitWindow.WaitWindow(self)
> dlg.Show(True) os.popen(Cmd)
> dlg.Destroy()
>
>
> Miniframe WaitWindow pouze obsahuje text "Prosim cekejte...". Problem je ale
> v tom, ze po dobu provadeni prikazu se sice miniframe zobrazi, ale nezobrazi
> se v nem ten text. Misto textu je pouze prazdne misto. Stejny problem je,
> kdyz tam dam misto textu tlacitko ci cokoliv jineho.
>
> Nevite jak toto vyresit?
>
> Diky za kazdou radu.
>
> Martin
>
> _______________________________________________
> Python mailing list
> [email protected]
> http://www.py.cz/mailman/listinfo/python
>
--
----
Leos Pol
SW Engineer
Radiante Corp.
If it can be imagined,
we can implement it
_______________________________________________
Python mailing list
[email protected]
http://www.py.cz/mailman/listinfo/python