<div dir="ltr">Ahoj, <div><br></div><div>zkus tohle:<div><div> <a href="https://gist.github.com/petrblahos/9648800">https://gist.github.com/petrblahos/9648800</a><br></div></div><div>a klidně se ptej. Ovšem připomínám, že s Gtk nedělám, takže je možné, </div>
<div>že Best Practices jsou někde jinde.</div></div><div><br></div><div>Je tam problém, že se mnohokrát volá set_from_file. Správně by bylo si ty </div><div>2 obrázky na začátku nahrát, a potom je jen použít. </div><div>
--</div>
<div>Petr</div><div><br></div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-18 18:19 GMT+01:00 Lukáš Sliacky <span dir="ltr"><<a href="mailto:lukas@sliacky.eu" target="_blank">lukas@sliacky.eu</a>></span>:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Ahoj Petr,<br>
<br>
ďakujem za ochotu. Rozumiem tomu, čo si chcel "povedať", ale žiaľ, toto je môj prvý program, takže sa s tým celkom dobre trápim. (Hotovým zdrojákom ako tak rozumiem, ale ak mám vyprodukovať niečo z hlavy, je to problém)<br>
<br>
Snažil som sa Tvoj pseudokód preložiť do reálneho kódu, ale na to mám príliš málo vedomostí a skúseností.<br>
<br>
"Výsledok" je tu:<br>
<div class=""><br>
from gi.repository import Gtk<br>
import sys<br>
<br>
class LedControl(Gtk.Window):<br>
<br>
def __init__(self):<br>
Gtk.Window.__init__(self, title="LED Control")<br>
self.set_border_width(6)<br>
self.set_default_size(200, 250)<br>
<br>
okno = Gtk.Table(4, 2, True)<br>
self.add(okno)<br>
<br>
img_LED_on = Gtk.Image()<br>
img_LED_on.set_from_file("LED_on.png")<br>
</div> #~ self.add(img_LED_on)<br>
<div class=""><br>
img_LED_off = Gtk.Image()<br>
img_LED_off.set_from_file("LED_off.png")<br>
</div> #~ self.add(img_LED_off)<br>
<br>
widget_LED1 = Gtk.Image()<br>
widget_LED2 = Gtk.Image()<br>
widget_LED3 = Gtk.Image()<br>
widget_LED4 = Gtk.Image()<br>
<div class=""><br>
widget1 = Gtk.Image()<br>
widget2 = Gtk.Image()<br>
widget3 = Gtk.Image()<br>
</div> widget4 = Gtk.Image()<br>
<div class=""><br>
button_LED_1 = Gtk.ToggleButton("LED 1")<br>
button_LED_1.connect("toggled", self.LED_OnOff, "1")<br>
button_LED_1.set_border_width(2)<br>
<br>
button_LED_2 = Gtk.ToggleButton("LED 2")<br>
button_LED_2.connect("toggled", self.LED_OnOff, "2")<br>
button_LED_2.set_border_width(2)<br>
<br>
button_LED_3 = Gtk.ToggleButton("LED 3")<br>
button_LED_3.connect("toggled", self.LED_OnOff, "3")<br>
button_LED_3.set_border_width(2)<br>
<br>
button_LED_4 = Gtk.ToggleButton("LED 4")<br>
button_LED_4.connect("toggled", self.LED_OnOff, "4")<br>
button_LED_4.set_border_width(2)<br>
<br>
</div> led_widgets = {<br>
button_LED_1.id: widget1,<br>
button_LED_2.id: widget2,<br>
button_LED_3.id: widget3,<br>
button_LED_4.id: widget4<br>
<div class=""> }<br>
<br>
okno.attach(button_LED_1, 0, 1, 0, 1)<br>
okno.attach(button_LED_2, 0, 1, 1, 2)<br>
okno.attach(button_LED_3, 0, 1, 2, 3)<br>
okno.attach(button_LED_4, 0, 1, 3, 4)<br>
<br>
</div> #~ widget1.set_from_image(img_LED_off)<br>
#~ widget1.set_from_image(img_LED_off)<br>
#~ widget1.set_from_image(img_LED_off)<br>
#~ widget1.set_from_image(img_LED_off)<br>
<br>
okno.attach = (widget_LED1, 1, 2, 2, 3)<br>
okno.attach = (widget_LED2, 1, 2, 0, 1)<br>
okno.attach = (widget_LED3, 1, 2, 1, 2)<br>
okno.attach = (widget_LED4, 1, 2, 2, 3)<br>
<div class=""><br>
def LED_OnOff(self, okno, name):<br>
if okno.get_active():<br>
status = "on"<br>
</div> led_widgets[<a href="http://okno.id" target="_blank">okno.id</a>].set_from_image(img_LED_on)<br>
else:<br>
status = "off"<br>
led_widgets[<a href="http://okno.id" target="_blank">okno.id</a>].set_from_image(img_LED_off)<br>
<div class=""> print("Tlačítko LED", name, "zmenilo stav na", status)<br>
<br>
<br>
app = LedControl()<br>
app.connect("delete-event", Gtk.main_quit)<br>
app.show_all()<br>
Gtk.main()<br>
<br>
</div>Našiel by sa niekto ochotný a hlavne trpezlivý, kto by ma posunul kúsok ďalej?<br>
Ďakujem.<br>
<br>
Lukáš<br>
<div class="HOEnZb"><div class="h5">_______________________________________________<br>
Python mailing list<br>
<a href="mailto:python@py.cz">python@py.cz</a><br>
<a href="http://www.py.cz/mailman/listinfo/python" target="_blank">http://www.py.cz/mailman/listinfo/python</a><br>
<br>
Visit: <a href="http://www.py.cz" target="_blank">http://www.py.cz</a><br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">____________________<br><div><a href="http://pysk.blog.root.cz/" target="_blank">http://pysk.blog.root.cz/</a><br></div></div>
</div>