2015年1月14日 星期三

LINUX C/C++語言IDE編輯器Anjuta

之前學了一點QT屬C++,最近想學GTK加C和C++,在網路上找到Anjuta這個IDE,感覺還行,亂玩一下,大概知道了一些,在BLOG做一下筆記了

用Anjuta先建立一個GTK project,建立GTK圖形界面,選Files,會有一個副檔名ui,按右鍵,如圖,選GLADE界面程式設計,右邊會出現GTK視窗


選Palette,就會出現各種ui,用點取,加入右邊FRAME,這樣很簡單,設計出GTK視窗,再來更改個元件屬性,或加ACTION,點右邊FRAME的元件,左邊就會出現相對應Widgets
 選一般可更改一些屬性,如圖改了按鈕名稱
再來替按鈕加ACTION,選訊號,clicked選項(ACTION),處理器敲入要處理的method,使用者資訊,選要處理的對象widget,因為我要點按鈕,就會改LABEL的名稱,所以使用者資訊選label1

對clkicked連點2下,便會自動跳到處理器method(如圖)
還記得上面使用者資訊,選label1,程式就會幫我們在method中,加入OBJ,讓method可以取得(如下),不然你就要自己加,浪費時間

GObject *label1 = G_OBJECT (user_data);

再來設定label1的text

gtk_label_set_text ( label1,"我是案鈕2");


這樣用Anjuta簡單設計了一個GTK的小程式了



更新
可以用拖曳方式,更改widget位置,大小,Palette選第2項(移動符號)如圖

void
SHOW_TEXT2 (GtkButton *button, gpointer user_data)
{
    /*取得label1 OBJ*/
    GObject *label1 = G_OBJECT (user_data);
    change_label_text(label1,button);

}
自加了change_label_text這個methot,呼叫change_label_text(label1,button);把label1和button分別傳給了label和button變數
void
change_label_text(label,button)
{
    char st1[30]="你按了";
    char *st2;
   
    /*取得BUTTON label*/
    st2 =gtk_button_get_label (button);
    /*st1,st2字串相加*/
    strcat(st1,st2);
    /*重設LABEL text*/
    gtk_label_set_text ( label,st1);
}




沒有留言: