Sziasztok!
Hogyan lehet egy gtkcombobox eseményében egy label tulajdonságát megváltoztatni? Nem akarom a labelt globálisként definiálni, vagyis szükségem lenne egy olyan függvényre amivel a label referenciáját ki tudom keresni. Emlékeim szerint van ilyen, de régen használtam és elfelejtettem, a függvény referencia oldal meg akkora, hogy elvesztem benne.
- 948 megtekintés
Hozzászólások
Azt megteheted, hogy csinalsz 1 structot amiben az ablakod widgetjeinek pointered tarolod.
Mikor letrehozod a gui-t.
struct appWindow w;
GtkWidget * label1;
w->label1 = label1 = GTK_WIDGET(gtk_label_new ("akarmi"));
aztan a gtkcombobox 'changed' callback fuggvenyenek beteszed a &w-t (user_data)
En igy csinalnam elso korben, egyszeruseg, szeretem.
Amit te keresel, az a Glade lookup_widget fuggvenye volt, de nem emlekszem mar hogy csinalja, mint csinalja.
- A hozzászóláshoz be kell jelentkezni
Plusz, eleve mivel glade, glade alapu appodnak kell lenni. Ha nem igy van, bukta van.
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
#include <gtk/gtk.h>
#include <glade/glade.h>
...
GladeXML *xml;
...
gtk_init(&argc, &argv);
xml = glade_xml_new("a_te_glade_fajlod_neve.glade", NULL, NULL);
...
GtkWidget *widget = glade_xml_get_widget(xml, "widgetneve_amit_gladeben_megadtal_neki");
Szerk: eggyel kijjebb akart menni.
- A hozzászóláshoz be kell jelentkezni
köszi!
Ez így tök korrekt:)
- A hozzászóláshoz be kell jelentkezni
w.label ennyit azert javitok magamon
De ha glade, akkor lehet libglade-t hasznalni, es glade_xml_get_widget ()-el le lehet szippantani a fajlbol pointert.
Van itt lehetoseg, dogivel.
- A hozzászóláshoz be kell jelentkezni