[python] Zobrazeni frame-miniframe

Leos Pol leos na radiante-corp.com
Úterý Srpen 29 16:48:26 CEST 2006


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

jedlicka_martin na cbox.cz 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
> Python na py.cz
> http://www.py.cz/mailman/listinfo/python
>   


-- 
----
Leos Pol
SW Engineer
Radiante Corp.

If it can be imagined,
we can implement it



Další informace o konferenci Python