亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2190 | 回復(fù): 3
打印 上一主題 下一主題

GTK+ 新手問題 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2005-03-15 21:21 |只看該作者 |倒序?yàn)g覽
最近想學(xué)GTK編程。。。下了那個(gè)官方的GTK+ 2.0 教程。
  1. #include <gtk/gtk.h>;

  2. /* 這是一個(gè)回調(diào)函數(shù)。data 參數(shù)在本示例中被忽略。
  3. * 后面有更多的回調(diào)函數(shù)示例。*/
  4. void hello( GtkWidget *widget,
  5.             gpointer   data )
  6. {
  7.     g_print ("Hello World\n");
  8. }

  9. gint delete_event( GtkWidget *widget,
  10.                    GdkEvent  *event,
  11.                    gpointer   data )
  12. {
  13.     /* 如果你的 "delete_event" 信號處理函數(shù)返回 FALSE,GTK 會發(fā)出 "destroy" 信號。
  14.      * 返回 TRUE,你不希望關(guān)閉窗口。
  15.      * 當(dāng)你想彈出“你確定要退出嗎?”對話框時(shí)它很有用。*/

  16.     g_print ("delete event occurred\n");

  17.     /* 改 TRUE 為 FALSE 程序會關(guān)閉。*/

  18.     return TRUE;
  19. }

  20. /* 另一個(gè)回調(diào)函數(shù) */
  21. void destroy( GtkWidget *widget,
  22.               gpointer   data )
  23. {
  24.     gtk_main_quit ();
  25. }

  26. int main( int   argc,
  27.           char *argv[] )
  28. {
  29.     /* GtkWidget 是構(gòu)件的存儲類型 */
  30.     GtkWidget *window;
  31.     GtkWidget *button;
  32.    
  33.     /* 這個(gè)函數(shù)在所有的 GTK 程序都要調(diào)用。參數(shù)由命令行中解析出來并且送到該程序中*/
  34.     gtk_init (&argc, &argv);
  35.    
  36.     /* 創(chuàng)建一個(gè)新窗口 */
  37.     window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
  38.    
  39.     /* 當(dāng)窗口收到 "delete_event" 信號 (這個(gè)信號由窗口管理器發(fā)出,通常是“關(guān)閉”
  40.      * 選項(xiàng)或是標(biāo)題欄上的關(guān)閉按鈕發(fā)出的),我們讓它調(diào)用在前面定義的 delete_event() 函數(shù)。
  41.      * 傳給回調(diào)函數(shù)的 data 參數(shù)值是 NULL,它會被回調(diào)函數(shù)忽略。*/
  42.     g_signal_connect (G_OBJECT (window), "delete_event",
  43.                       G_CALLBACK (delete_event), NULL);
  44.    
  45.     /* 在這里我們連接 "destroy" 事件到一個(gè)信號處理函數(shù)。  
  46.      * 對這個(gè)窗口調(diào)用 gtk_widget_destroy() 函數(shù)或在 "delete_event" 回調(diào)函數(shù)中返回 FALSE 值
  47.      * 都會觸發(fā)這個(gè)事件。*/
  48.     g_signal_connect (G_OBJECT (window), "destroy",
  49.                       G_CALLBACK (destroy), NULL);
  50.    
  51.     /* 設(shè)置窗口邊框的寬度。*/
  52.     gtk_container_set_border_width (GTK_CONTAINER (window), 10);
  53.    
  54.     /* 創(chuàng)建一個(gè)標(biāo)簽為 "Hello World" 的新按鈕。*/
  55.     button = gtk_button_new_with_label ("Hello World");
  56.    
  57.     /* 當(dāng)按鈕收到 "clicked" 信號時(shí)會調(diào)用 hello() 函數(shù),并將NULL傳給
  58.      * 它作為參數(shù)。hello() 函數(shù)在前面定義了。*/
  59.     g_signal_connect (G_OBJECT (button), "clicked",
  60.                       G_CALLBACK (hello), NULL);
  61.    
  62.     /* 當(dāng)點(diǎn)擊按鈕時(shí),會通過調(diào)用 gtk_widget_destroy(window) 來關(guān)閉窗口。
  63.      * "destroy" 信號會從這里或從窗口管理器發(fā)出。*/
  64.     g_signal_connect_swapped (G_OBJECT (button), "clicked",
  65.                               G_CALLBACK (gtk_widget_destroy),
  66.                               window);
  67.    
  68.     /* 把按鈕放入窗口 (一個(gè) gtk 容器) 中。*/
  69.     gtk_container_add (GTK_CONTAINER (window), button);
  70.    
  71.     /* 最后一步是顯示新創(chuàng)建的按鈕和窗口 */
  72.     gtk_widget_show (button);
  73.     gtk_widget_show (window);
  74.    
  75.     /* 所有的 GTK 程序必須有一個(gè) gtk_main() 函數(shù)。程序運(yùn)行停在這里
  76.      * 等待事件 (如鍵盤事件或鼠標(biāo)事件) 的發(fā)生。*/
  77.     gtk_main ();
  78.    
  79.     return 0;
  80. }
復(fù)制代碼

編譯時(shí)用
gcc -Wall -g helloworld.c -o helloworld `pkg-config --cflags gtk+-2.0` \
`pkg-config --libs gtk+-2.0`
失敗了,請求各位高手指教.[/code]

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2005-03-15 21:22 |只看該作者

GTK+ 新手問題

/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_renderer_get_type'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_renderer_set_matrix'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `g_assert_warning'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_renderer_draw_glyphs'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_renderer_draw_layout'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_renderer_draw_layout_line'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `pango_font_description_get_size_is_absolute'
/usr/lib/libpangoft2-1.0.so.0: undefined reference to `g_return_if_fail_warning'
collect2: ld returned 1 exit status

這是出錯(cuò)信息,偶用的是FC3

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2005-03-16 09:12 |只看該作者

GTK+ 新手問題

看樣子象pango庫沒有正確配置,你看看pkg-config能否找到它?我在RH9下沒問題的。
  1. gcc -Wall -g `pkg-config --cflags --libs gtk+-2.0` helloworld.c -o helloworld
復(fù)制代碼

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2005-03-16 16:00 |只看該作者

GTK+ 新手問題

[quote]原帖由 "albcamus"]看樣子象pango庫沒有正確配置,你看看pkg-config能否找到它?我在RH9下沒問題的。[/quote 發(fā)表:

pkg-config果然什么也沒有,再請教一下應(yīng)該何如配置,謝謝了
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP