gtk_notebook_get_nth_page() 是一个函数,用于获取GTK Notebook(选项卡)中指定索引位置的页面部件。
函数原型如下:
GtkWidget* gtk_notebook_get_nth_page(GtkNotebook *notebook, gint page_num);
参数解释:
notebook:要操作的GTK Notebook部件。page_num:页面的索引号,从0开始计数。
返回值为指定索引位置的页面部件(GtkWidget*)。
以下是一个示例代码演示如何使用 gtk_notebook_get_nth_page() 函数来获取选项卡中指定索引位置的页面部件:
#include <gtk/gtk.h>
int main(int argc, char *argv[]) {
gtk_init(&argc, &argv);
GtkWidget *window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
g_signal_connect(window, "destroy", G_CALLBACK(gtk_main_quit), NULL);
GtkWidget *notebook = gtk_notebook_new();
gtk_container_add(GTK_CONTAINER(window), notebook);
GtkWidget *label1 = gtk_label_new("Page 1");
GtkWidget *label2 = gtk_label_new("Page 2");
// 添加标签页
guint page1_index = gtk_notebook_append_page(GTK_NOTEBOOK(notebook), label1, NULL);
guint page2_index = gtk_notebook_append_page(GTK_NOTEBOOK(notebook), label2, NULL);
// 获取第一个页面部件
GtkWidget *page1_widget = gtk_notebook_get_nth_page(GTK_NOTEBOOK(notebook), 0);
if (page1_widget) {
const gchar* label_text = gtk_label_get_text(GTK_LABEL(page1_widget));
g_print("Label text of page 1: %s\n", label_text);
}
gtk_widget_show_all(window);
gtk_main();
return 0;
}
在上述示例中,我们创建了一个包含两个页面的GTK Notebook,并使用 gtk_notebook_get_nth_page() 函数获取第一个页面部件。然后,我们打印了第一个页面标签的文本内容。编译并运行该程序,你将看到输出结果为 “Label text of page 1: Page 1”。
内容由零声教学AI助手提供,问题来源于学员提问




