| |
GTK+ 2.0 Tutorial |
||
---|---|---|
Разные виджеты (Miscellaneous Widgets) |
Виджет выбора файла - быстрый и простой способ показать диалоговое окно File. Окно полностью укомплектовано всем необходимым включая кнопки Ok и Cancel что позволяет сэкономить время при программировании.
Диалог выбора файлов создаётся функцией:
GtkWidget *gtk_file_selection_new( const gchar *title ); |
Установить имя файла для примера в определённом каталоге или получить имя файла по умолчанию:
void gtk_file_selection_set_filename( GtkFileSelection *filesel, const gchar *filename ); |
Для захвата текста введенного пользователем используется эта функция:
gchar *gtk_file_selection_get_filename( GtkFileSelection *filesel ); |
Есть также указатели на виджеты, находящиеся в пределах виджета выбора файла:
dir_list file_list selection_entry selection_text main_vbox ok_button cancel_button help_button |
Наиболее используемые указатели ok_button, cancel_button и help_button.
Модифицированный пример из testgtk.c.
#include <gtk/gtk.h> /* Получаем выбранное имя файла и выводим на консоль */ void file_ok_sel( GtkWidget *w, GtkFileSelection *fs ) { g_print ("%s\n", gtk_file_selection_get_filename (GTK_FILE_SELECTION (fs))); } int main( int argc, char *argv[] ) { GtkWidget *filew; gtk_init (&argc, &argv); /* Создаём новый виджет выбора файлов */ filew = gtk_file_selection_new ("File selection"); g_signal_connect (G_OBJECT (filew), "destroy", G_CALLBACK (gtk_main_quit), NULL); /* Соединяем ok_button с file_ok_sel функцией */ g_signal_connect (G_OBJECT (GTK_FILE_SELECTION (filew)->ok_button), "clicked", G_CALLBACK (file_ok_sel), (gpointer) filew); /* Соединяем cancel_button с закрытием виджета */ g_signal_connect_swapped (G_OBJECT (GTK_FILE_SELECTION (filew)->cancel_button), "clicked", G_CALLBACK (gtk_widget_destroy), G_OBJECT (filew)); /* Устанавливаем имя файла по умолчанию */ "penguin.png"); gtk_widget_show (filew); gtk_main (); return 0; } |
Color Selection |
Container Widgets |
Закладки на сайте Проследить за страницей |
Created 1996-2024 by Maxim Chirkov Добавить, Поддержать, Вебмастеру |