Widgets
Widgets (1)
GtkLabel, GtkButton and Gtkbox
GtkLabel
Мы сделали окно и показывали его на экране в предыдущем разделе. Теперь мы переходим к следующей теме, виджетам в окне. Самый простой виджет - GtkLabel. Это виджет со строкой внутри.
Сохраните эту программу в файл lb1.c
. Затем скомпилируйте и запустите.
Окно с сообщением «Привет». появляется.
Там только небольшое изменение между pr4.c
и lb1.c
. Diff - хорошая программа для определения разницы между двумя файлами.
Это говорит нам:
Добавлено определение переменной lab.
Название окна изменено.
Метка создается и присоединяется к окну.
Функция gtk_window_set_child (GTK_WINDOW (win), lab)
делает метку lab
дочерним виджетом окна win
. Будь осторожен. Дочерний виджет отличается от дочернего объекта. У объектов есть родительско-дочерние отношения, а у виджетов также есть родительско-дочерние отношения. Но эти два отношения совершенно разные. Не путайте. В программе lb1.c
, lab
является дочерним виджетом win
. Дочерние виджеты всегда находятся внутри своего родительского виджета на экране. Смотрите окно, появившееся на экране. Окно включает метку.
У окна win
нет родителей. Мы называем такое окно окном верхнего уровня. Одно приложение может иметь два или более окна верхнего уровня.
Last updated
Was this helpful?