Fórum Ubuntu CZ/SK

Ubuntu pro osobní počítače => Software => Příkazový řádek a programování pro GNU/Linux => Téma založeno: TIBOR 31 Prosince 2012, 16:31:23

Název: Anjuta-Python vpisovanie do textview.
Přispěvatel: TIBOR 31 Prosince 2012, 16:31:23
Zdravim. Trochu sa hrajem a nedari sa mi pochopit jednu vec.
Tu je kod
Kód: [Vybrat]
def text(self, widget):
1 a = 0
2 b = 0
3 c = 0
4 y = 0
5 self.vstup = ""
6 for a in range(1, 50):
7 for b in range(1, 50):
8 for c in range(1, 50):
9 if a == b:
10   x = 0
11 else: 
12    if a == c:
13      x = 0
14    else:
15    if b == c:
16 x = 0
17    else:
18    self.vstup = self.vstup + str(a) + " " + str(b) + " " + str(c) + "\n"
19    self.builder.get_object("textview1").get_buffer().set_text(self.vstup)
20    y = y + 1    
21    if y == 100:
22 self.vstup = ""
23 y = 0
Prosim nekritizujte kod viem ze sa to da spravit 100x lepsie.
Ovsem ide mi o to ze na riadku 18 sa mi v premennej self.vstup vytvara vysledny text ktori sa ma vykreslit v riadku 19 do pola textview. Ovsem tento text sa mi vykresli az cely kod prebehne. Cize az a, b, c dosiahnu cislo 49. Pritom to je hned za vytvaranim premmenej self.vstup ktora sa spravne vytvara pri kazdom prechode cyklu. Cize na konci sa to vypise cele spravne.
Co som prehliadol?

Som ja trubka. Okno sa znova vykresli az ked skonci funkcia text a vrati sa do tela programu. Je tak?
Název: Re:Anjuta-Python vpisovanie do textview.
Přispěvatel: GdH 31 Prosince 2012, 17:29:02
Citace
Okno sa znova vykresli az ked skonci funkcia text a vrati sa do tela programu. Je tak?

Je to tak, kód probíhá synchronně a widget se překreslí, až vrátíš řízení zpět hlavní smyčce.

Nedávno jsem psal (http://gdhnotes.blogspot.cz/2012/11/pygobject-aktualizace-gui-z-callbacku.html), jak to řešit v GTK.
Název: Re:Anjuta-Python vpisovanie do textview.
Přispěvatel: TIBOR 31 Prosince 2012, 19:12:22
Vdaka. Pekny clanok. Pouzil som prvu moznost. Sleep tam nemam a na skusanie zapisovania do textview to staci.
Název: Re:Anjuta-Python vpisovanie do textview.
Přispěvatel: GdH 31 Prosince 2012, 19:43:33
Evidentně jsem začal správným tématem :)
Název: Re:Anjuta-Python vpisovanie do textview.
Přispěvatel: TIBOR 31 Prosince 2012, 20:31:17
Nuz, odbornik sa nezaprie. :D