Hallo allerseits!
Ich arbeite gerade an einem pygtk-Programm, und bin nun auf folgendes Problem gestoßen:
Ist es möglich, auf irgendeine Art Buttons (oder ähnliche klickbare Objekte) auf einem Image platziert (möglichst so, dass man das Bild hinterher noch sehen kann)? Ich denke dabei an sowas wie die image map in HTML, also dass der Benutzer ein Bild sich hat, bei dem bestimmte Bereiche (ruhig auch rechteckige) klickbar sind.
Bin für jede Hilfe dankbar!
EDIT: Topic geändert um anderen Suchenden das Leben zu erleichtern
Edit (Leonidas): Topic geändert um den Forenregeln zu entsprechen.
Buttons auf einem Image?
-
- User
- Beiträge: 3
- Registriert: Montag 30. November 2009, 00:11
Zuletzt geändert von Chaosspawn23 am Montag 30. November 2009, 15:08, insgesamt 1-mal geändert.
Hallo
Das müsste so gehen:
-Als Container ein gtk.Fixed()
-Dann eine gtk.Image() mit put(0,0, gröse-des-bildes) platzieren
-dann an den verschiedenen Bereichen eine gtk.EventBox() mit put() platzieren
-bei den gtk.EventBox'sen must du noch ein set_visible_window(False) machen
-dann kannst du das Signal "button-press-event" benützen
Gruß
Andyh
Das müsste so gehen:
-Als Container ein gtk.Fixed()
-Dann eine gtk.Image() mit put(0,0, gröse-des-bildes) platzieren
-dann an den verschiedenen Bereichen eine gtk.EventBox() mit put() platzieren
-bei den gtk.EventBox'sen must du noch ein set_visible_window(False) machen
-dann kannst du das Signal "button-press-event" benützen
Gruß
Andyh
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys
if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys
if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
-
- User
- Beiträge: 3
- Registriert: Montag 30. November 2009, 00:11
Vielen Dank für die Antwort erstmal!
Die Methode scheint vielversprechend, aber ich hab mit der gtk.EventBox noch ein Verständnisproblem - wie bestimmt man denn, wie groß die werden soll? Mit gtk.Fixed.put kann man ja scheinbar nur die Startkoordinaten eines Objekts bestimmen, aber nicht die Endkoordinaten, also nicht die Größe.
Das mit der Größe wär eben wichtig, weil ich ja mehrere klickbare (unsichtbare) Rechtecke auf dem Bild haben will...
Sorry für meine noobigen Fragen
Die Methode scheint vielversprechend, aber ich hab mit der gtk.EventBox noch ein Verständnisproblem - wie bestimmt man denn, wie groß die werden soll? Mit gtk.Fixed.put kann man ja scheinbar nur die Startkoordinaten eines Objekts bestimmen, aber nicht die Endkoordinaten, also nicht die Größe.
Das mit der Größe wär eben wichtig, weil ich ja mehrere klickbare (unsichtbare) Rechtecke auf dem Bild haben will...
Sorry für meine noobigen Fragen
Generell kann man eine Minimalgröße für Widgets mit ``set_size_request(width, height) einstellen.Chaosspawn23 hat geschrieben:Vielen Dank für die Antwort erstmal!
Die Methode scheint vielversprechend, aber ich hab mit der gtk.EventBox noch ein Verständnisproblem - wie bestimmt man denn, wie groß die werden soll? Mit gtk.Fixed.put kann man ja scheinbar nur die Startkoordinaten eines Objekts bestimmen, aber nicht die Endkoordinaten, also nicht die Größe.
Das mit der Größe wär eben wichtig, weil ich ja mehrere klickbare (unsichtbare) Rechtecke auf dem Bild haben will...
Sorry für meine noobigen Fragen
-
- User
- Beiträge: 3
- Registriert: Montag 30. November 2009, 00:11
Ahh, jetzt ist alles klar! Danke für die Hilfe, das set_size_request war genau das was mir noch gefehlt hat. Und fertig ist der digitale Adventskalender
Macht mich neugierig, kannst du das Skript mal posten?
the more they change the more they stay the same
Coole Idee, würd mich auch mal interessieren, wie der aussiehtChaosspawn23 hat geschrieben:Ahh, jetzt ist alles klar! Danke für die Hilfe, das set_size_request war genau das was mir noch gefehlt hat. Und fertig ist der digitale Adventskalender