gtkwidget keresése

 ( nzmark | 2009. február 4., szerda - 20:42 )

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.

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

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.

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.


#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.

köszi!

Ez így tök korrekt:)

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.