Portál AbcLinuxu, 8. listopadu 2025 22:54
def __init__(self):
self.mixer=alsa.Mixer();
if self.mixer.getmute()[0]==0:
self.icon=gtk.status_icon_new_from_stock(gtk.STOCK_YES);
else:
self.icon=gtk.status_icon_new_from_stock(gtk.STOCK_NO);
pid=os.fork();
if pid==0:
while True:
mixer=alsa.Mixer();
if mixer.getmute()[0]==0:
print "UNMUTED";
self.icon.set_from_stock(gtk.STOCK_YES);
elif mixer.getmute()[0]==1:
print "MUTED";
self.icon.set_from_stock(gtk.STOCK_NO);
time.sleep(1);
self.icon.connect("popup-menu",self.show_controls);
mám problém s tím, že i když se mi na příkazovém řádku správně vypisuje MUTED/UNMUTED, tak se mi nemění tray ikona. Nevíte kde mám chybu?
Zkoušel jsem i vlákno, ale ani to nezabralo. A ten kód mixeru musím mít v jíném procesu, protože v hlavním procesu už mám smyčku gtk.main();
glib.timeout_add().
Mimochodem, osobně si myslím že je trochu neslušné ptát se na více místech najednou a nezmínit to...
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.