日B视频 亚洲,啪啪啪网站一区二区,91色情精品久久,日日噜狠狠色综合久,超碰人妻少妇97在线,999青青视频,亚洲一区二卡,让本一区二区视频,日韩网站推荐

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

GTK構件之微調(diào)按鈕

嵌入式技術 ? 來源:嵌入式技術 ? 作者:嵌入式技術 ? 2022-11-30 09:50 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1.微調(diào)按鈕簡介

? 微調(diào)按鈕(Spin Button)構件通常用于讓用戶從一個取值范圍你選擇一個值。它由一個文本輸入框和旁邊的向上和向下兩個按鈕組成。點擊某一個按鈕會讓文本輸入框里的數(shù)值大小在一定范圍你改變。文本輸入框里也可以直接輸入一個特定值。

微調(diào)按鈕構件允許其中的數(shù)值沒有小數(shù)位或具有指定的小數(shù)位,并且數(shù)值可以按一種可配置的方式增加或減小。在按鈕較長時間呈按下狀態(tài)時,構件的數(shù)值會根據(jù)工具按下時間的長短加速變化。

微調(diào)按鈕用一個調(diào)整對象來維護該按鈕能夠取值的范圍。微調(diào)按鈕構件因此而具有了很強大的功能。

2.調(diào)整對象簡介

GTK 有多種構件能夠由用戶通過鼠標或鍵盤進行調(diào)整,比如范圍構件。還有一些構件,比如說 GtkText 和GtkViewport,內(nèi)部都有一些可調(diào)整的屬性。

很明顯,當用戶調(diào)整范圍構件的值時,應用程序需要對值的變化進行響應。一種辦法就是當構件的調(diào)整值發(fā)生變化時,讓每個構件引發(fā)自己的信號,將新值傳遞到信號處理函數(shù)中,或者讓它在構件的內(nèi)部數(shù)據(jù)結構中查找構件的值。 但是,也許需要將這個調(diào)整值同時連接到幾個構件上,使得調(diào)整一個值時,其它的構件都隨之響應。最明顯的示例就是將一個滾動條連接到一個視角構件(viewport)或者滾動的文本區(qū)(text area)上。如果每個構件都要有自己的設置或獲取調(diào)整值的方法,程序員或許需要自己編寫很復雜的信號處理函數(shù),以便將這些不同構件之間的變化同步或相關聯(lián)。

GTK用一個調(diào)整對象(Adjustment object)解決了這個問題。調(diào)整對象不是構件,但是為構件提供了一種以抽象、 靈活的方法來傳遞調(diào)整值信息。調(diào)整對象最明顯的用處就是為范圍構件(比如滾動條和比例構件)儲存配置參數(shù)和值。 然而,因為調(diào)整對象是從 Object派生的,在其正常的數(shù)據(jù)結構之外,它還具有一些特殊的功能。 最重要的是,它們能 夠引發(fā)信號,就像構件一樣,這些信號不僅能夠讓程序?qū)τ脩粼诳烧{(diào)整構件上的輸入進行響應,還能在可調(diào)整構件之間透明地傳播調(diào)整值。

在許多其它的構件中都能夠看到調(diào)整對象的用處。比如進度條、 視角 、 滾動窗口等。

  • 微調(diào)按鈕中創(chuàng)建調(diào)整對象函數(shù):
GtkAdjustment *gtk_adjustment_new (gdouble value,
gdouble lower,gdouble upper,
gdouble step_increment,gdouble page_increment,
gdouble page_size);
形參:value -- 微調(diào)按鈕初始值
      lower、upper  --構件允許的最大值、最小值
      step_increment  --鼠標左鍵按下構件一次增加/減小的值
      page_increment  --鼠標右鍵下構件一次增加/減少的值
      page_size  --沒有用到
返回值:返回微調(diào)按鈕構件對象
  • 微調(diào)按鈕創(chuàng)建函數(shù):
GtkWidget *gtk_spin_button_new (GtkAdjustment *adjustment,gdouble  climb_rate,guint digits)
形參:adjustment --調(diào)整對象
      climb_rate --指明構件數(shù)值變化的加速度(長時間按住按鈕, 數(shù)值會加速變化)。介于0.0~1.0之間
      digits --微調(diào)按就值小數(shù)位數(shù)
  • 微調(diào)按鈕參數(shù)配置函數(shù):
void gtk_spin_button_configure( GtkSpinButton *spin_button,GtkAdjustment *adjustment,
gdouble climb_rate,guint digits );
形參:spin_button --微調(diào)按鈕控件
adjustment --調(diào)整對象
      climb_rate --指明構件數(shù)值變化的加速度(長時間按住按鈕, 數(shù)值會加速變化)。介于0.0~1.0之間
      digits --微調(diào)按就值小數(shù)位數(shù)
  • 設置或獲取構件內(nèi)部使用的調(diào)整對象:
/*獲取微調(diào)按鈕調(diào)整對象信息*/
GtkAdjustment *gtk_spin_button_get_adjustment (GtkSpinButton *spin_button);
/*設置微調(diào)按鈕調(diào)整對象信息*/
gtk_spin_button_set_adjustment (GtkSpinButton *spin_button,GtkAdjustment *adjustment);
  • 設置微調(diào)按鈕小數(shù)位數(shù):
void gtk_spin_button_set_digits (GtkSpinButton *spin_button,guint digits)
形參:spin_button --微調(diào)按鈕控件
      digits --微調(diào)按鈕數(shù)值小數(shù)位數(shù)
  • 設置微調(diào)按鈕數(shù)值:
void gtk_spin_button_set_value (GtkSpinButton *spin_button,gdouble value);
形參:spin_button --微調(diào)按鈕控件
      value-- 要設置的數(shù)值
  • 獲取按鈕當前數(shù)值:
/*以整數(shù)方式獲取當前按鈕數(shù)值*/
gdouble gtk_spin_button_get_value ( GtkSpinButton *spin_button );
/*以小數(shù)方式獲取當前按鈕數(shù)值*/
gint gtk_spin_button_get_value_as_int( GtkSpinButton *spin_button );
  • 以當前值為基準修改微調(diào)按鈕數(shù)值:
void gtk_spin_button_spin( GtkSpinButton *spin_button,GtkSpinType direction,gdouble increment );
形參:spin_button --微調(diào)按鈕控件
direction 取以下參數(shù):
        GTK_SPIN_STEP_FORWARD
        GTK_SPIN_STEP_BACKWARD
        GTK_SPIN_PAGE_FORWARD
        GTK_SPIN_PAGE_BACKWARD
        GTK_SPIN_HOME
        GTK_SPIN_END
        GTK_SPIN_USER_DEFINED

? GTK_SPIN_STEP_FORWARD和GTK_SPIN_STEP_BACKWARD將構件的值按increment參數(shù)指定的數(shù)值增大或減小,除非increment參數(shù)是 0。這種情況下,構件的值將按與其相關聯(lián)的調(diào)整對象的step_increment值改變。

GTK_SPIN_PAGE_FORWARD和GTK_SPIN_PAGE_BACKWARD只是簡單地按increment參數(shù)改變微調(diào)按鈕構件的值。

GTK_SPIN_HOME 將構件的值設置為相關聯(lián)調(diào)整對象的范圍的最小值。

GTK_SPIN_END 將構件的值設置為相關聯(lián)調(diào)整對象的范圍的最大值。

GTK_SPIN_USER_DEFINED簡單地按指定的數(shù)值改變構件的數(shù)值。

  • 限制微調(diào)按鈕構件的文本框只能輸入數(shù)值:
void gtk_spin_button_set_numeric (GtkSpinButton *spin_button,gboolean numeric)
形參:spin_button --微調(diào)按鈕控件
      numeric  --TRUE 只能輸入數(shù)字;FALSE 可以輸入任意內(nèi)容
  • 設置讓微調(diào)按鈕構件在upper和lower之間循環(huán):
void gtk_spin_button_set_wrap (GtkSpinButton  *spin_button, gboolean wrap)
形參:spin_button --微調(diào)按鈕控件
      wrap --TRUE 當按鈕值到達最小值再往下調(diào)整將變?yōu)樽畲笾?;最大值再往上調(diào)整將為最小值
            FALSE 當按鈕值到達最小值再往下調(diào)整將保持不變;最大值再往上調(diào)整保持不變

??可以設置讓微調(diào)按鈕構件將其值圓整到最接近 step_increment 的值(在該微調(diào)按鈕構件使用的調(diào)整對象中設置的)。用下面的函數(shù)實現(xiàn):

void gtk_spin_button_set_snap_to_ticks( GtkSpinButton *spin_button,gboolean snap_to_ticks );
  • 微調(diào)按鈕構件的更新方式可以用下面的函數(shù)改變:
void gtk_spin_button_set_update_policy( GtkSpinButton*spin_button,GtkSpinButtonUpdatePolicy policy );
形參:spin_button --微調(diào)按鈕控件
      policy  --可以取如下值:
		  GTK_UPDATE_ALWAYS 
          GTK_UPDATE_IF_VALID。

??在GTK_UPDATE_IF_VALID方式下,微調(diào)按鈕構件只有在輸入文本是其調(diào)整對象指定范圍你合法的值時才進行更新,否則文本會被重置為當前的值。
??在GTK_UPDATE_ALWAYS方式下,我們將忽略在文本轉(zhuǎn)換為數(shù)值時的錯誤。

  • 更新微調(diào)按鈕:
void gtk_spin_button_update( GtkSpinButton *spin_button );

3.微調(diào)按鈕示例

poYBAGOGttiAHAp7AAG13z1IBuA001.png#pic_center

??本示例實現(xiàn)共能如下:

  1. 通過微調(diào)按鈕數(shù)值日期(年、月、日);
  2. 通過復選按鈕選擇微調(diào)按鈕僅能輸入數(shù)字;
  3. 設置數(shù)值的小數(shù)位數(shù)
  4. 退出按鈕通過對話框提示是否退出,保存按鈕提示保存成功;
#include 
#include 
/*微調(diào)按鈕回調(diào)函數(shù)*/
void spin_button_callback(GtkWidget *widget,gpointer data)
{
	GtkWidget *spinbutton=(GtkWidget *)data;
	int val;
	/*獲取當前微調(diào)按鈕的值*/
	val=gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(widget));
	g_print("val=%dn",val);
	/*修改小數(shù)位數(shù)*/
	gtk_spin_button_set_digits(GTK_SPIN_BUTTON(spinbutton),val);
}
/*復選按鈕處理函數(shù)*/
void check_button_callback(GtkWidget *widget,gpointer data)
{
	GtkWidget *spinbutton=(GtkWidget *)data;
	if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget)))
	{
		/*設置微調(diào)按鈕只能輸入數(shù)字*/
		gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton),TRUE);
	}
	else
	{
		/*設置微調(diào)按鈕可以輸入任意內(nèi)容*/
		gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spinbutton),FALSE);
	}
}
/*保存按鈕處理函數(shù)*/
void save_button_callback(GtkWidget *widget,gpointer data)
{
	g_print("保存n");
	GtkWidget *window=(GtkWidget *)data;
	GtkWidget *dialog;
	GtkWidget *label;
	dialog=gtk_dialog_new_with_buttons("保存", GTK_WINDOW(window),GTK_DIALOG_MODAL,NULL);
	gtk_window_set_default_size(GTK_WINDOW(dialog),100, 100);
	label=gtk_label_new("保存成功n");
	gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),label,TRUE, TRUE,0);
	gtk_widget_show(label);
	gtk_widget_show(dialog);
}
GtkWidget *dialog;
/*對話框處理回調(diào)函數(shù)*/
void button_clicked_callback(GtkWidget *widget,gpointer data)
{
	char *pada=(gchar *)data;
	if(!strcmp(pada,"on"))
	{
		gtk_widget_destroy(dialog);//關閉對話框
	}
	if(!strcmp(pada,"ok"))
	{
		gtk_main_quit();
	}
}
/*退出按鈕處理函數(shù)*/
void quit_button_callback(GtkWidget *widget,gpointer data)
{
	g_print("退出n");
	GtkWidget *window=(GtkWidget *)data;
	GtkWidget *label;
	GtkWidget *table;
	GtkWidget *button;
	dialog=gtk_dialog_new_with_buttons("是否退出", GTK_WINDOW(window),GTK_DIALOG_MODAL,NULL);
	gtk_window_set_default_size(GTK_WINDOW(dialog),100, 100);
	label=gtk_label_new("是否退出");
	gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->vbox),label,TRUE, TRUE,0);
	gtk_widget_show(label);

	/*創(chuàng)建組裝表*/
	table=gtk_table_new(1,0,FALSE);
	gtk_box_pack_start(GTK_BOX(GTK_DIALOG(dialog)->action_area),table,FALSE, FALSE, 0);
	gtk_widget_show(table);
	/*創(chuàng)建按鈕*/
	button=gtk_button_new_from_stock(GTK_STOCK_NO);
	gtk_table_attach_defaults(GTK_TABLE(table),button,0,1,0,1);
	gtk_widget_show(button);
	g_signal_connect(GTK_OBJECT(button),"clicked",G_CALLBACK(button_clicked_callback),"on");
	/*創(chuàng)建按鈕*/
	button=gtk_button_new_from_stock(GTK_STOCK_OK);
	gtk_table_attach_defaults(GTK_TABLE(table),button,1,2,0,1);
	g_signal_connect(GTK_OBJECT(button),"clicked",G_CALLBACK(button_clicked_callback),"ok");
	gtk_widget_show(button);
	gtk_widget_show(dialog);
}
int main(int argc,char *argv[])
{
	GtkWidget *window;
	GtkWidget *vbox,*box;
	GtkWidget *frame;
	GtkAdjustment *adjust;
	GtkWidget *table;
	GtkWidget *label;
	GtkWidget *spin_button,*spin_val_button;
	GtkWidget *check_button;
	GtkWidget *button;
	gtk_init(&argc,&argv);
	window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
	gtk_window_set_title(GTK_WINDOW(window), "微調(diào)按鈕");
	gtk_window_set_default_size(GTK_WINDOW(window),320, 240);
	gtk_container_set_border_width(GTK_CONTAINER(window) ,5);
	g_signal_connect(G_OBJECT(window),"destroy",G_CALLBACK(gtk_main_quit),NULL);

	/*創(chuàng)建縱向盒*/
	vbox=gtk_vbox_new(FALSE,0);
	gtk_container_set_border_width(GTK_CONTAINER(vbox) ,2);
	gtk_container_add(GTK_CONTAINER(window),vbox);
	gtk_widget_show(vbox);
	/*創(chuàng)建框架構件*/
	frame=gtk_frame_new("日期設置");
	gtk_frame_set_label_align(GTK_FRAME(frame),1.0,0.5);
	/*設置框架構件風格*/
	gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_OUT);
	gtk_box_pack_start(GTK_BOX(vbox),frame, FALSE,TRUE,0);
	gtk_widget_show(frame);

	/*創(chuàng)建組裝表*/
	table=gtk_table_new(2,3,FALSE);
	gtk_container_add(GTK_CONTAINER(frame),table);
	/*設置列之間的間隔*/
	gtk_table_set_col_spacings(GTK_TABLE(table),20);
	gtk_widget_show(table);

	/*創(chuàng)建調(diào)整對象*/
	adjust=(GtkAdjustment *)gtk_adjustment_new(2022,1970,3000,1,1,0);
	/*創(chuàng)建微調(diào)按鈕*/
	spin_button=gtk_spin_button_new(adjust,0.5, 0);
	/*限制微調(diào)按鈕只能輸入數(shù)值*/
	gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(spin_button),TRUE);
	/*設置按鈕達到最大值后再變?yōu)樽钚≈?/
	gtk_spin_button_set_wrap (GTK_SPIN_BUTTON(spin_button), TRUE);
	gtk_table_attach_defaults (GTK_TABLE(table),spin_button,0,1,1,2);
	gtk_widget_show(spin_button);
	/*設置標簽*/
	label=gtk_label_new("年");
	gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,0,1);
	
	gtk_widget_show(label);

	/*創(chuàng)建微調(diào)按鈕*/
	adjust=(GtkAdjustment *)gtk_adjustment_new(1,1,12,1,1,0);
	spin_button=gtk_spin_button_new(adjust,1, 0);
	gtk_spin_button_set_wrap (GTK_SPIN_BUTTON(spin_button), TRUE);
	gtk_table_attach_defaults (GTK_TABLE(table),spin_button,1,2,1,2);
	gtk_widget_show(spin_button);
	/*設置標簽*/
	label=gtk_label_new("月");
	gtk_table_attach_defaults(GTK_TABLE(table),label,1,2,0,1);
	gtk_widget_show(label);

	/*創(chuàng)建微調(diào)按鈕*/
	adjust=(GtkAdjustment *)gtk_adjustment_new(1,1,31,1,1,0);
	spin_button=gtk_spin_button_new(adjust,0.5, 0);
	gtk_spin_button_set_wrap (GTK_SPIN_BUTTON(spin_button), TRUE);
	gtk_table_attach_defaults (GTK_TABLE(table),spin_button,2,3,1,2);
	gtk_widget_show(spin_button);
	/*設置標簽*/
	label=gtk_label_new("日");
	gtk_table_attach_defaults(GTK_TABLE(table),label,2,3,0,1);
	gtk_widget_show(label);

	/*創(chuàng)建框架構件*/
	frame=gtk_frame_new("數(shù)值調(diào)整");
	gtk_frame_set_label_align(GTK_FRAME(frame),0.5,0.5);
	gtk_frame_set_shadow_type (GTK_FRAME (frame), GTK_SHADOW_ETCHED_OUT);
	gtk_box_pack_start(GTK_BOX(vbox),frame, FALSE,TRUE,0);
	gtk_widget_show(frame);
	/*創(chuàng)建縱向向盒*/
	box=gtk_vbox_new(FALSE,0);
	gtk_container_add(GTK_CONTAINER(frame),box);
	gtk_widget_show(box);
	/*創(chuàng)建組裝表*/
	table=gtk_table_new(2,2,FALSE);
	gtk_box_pack_start(GTK_BOX(box),table,TRUE,TRUE,0);
	/*設置列之間的間隔*/
	gtk_table_set_col_spacings(GTK_TABLE(table),10);
	gtk_widget_show(table);	
	/*創(chuàng)建調(diào)整對象*/
	adjust=(GtkAdjustment *)gtk_adjustment_new(0,-5000,5000,0.5,0.5,0);
	spin_val_button=gtk_spin_button_new(adjust,0.5, 2);
	gtk_table_attach_defaults (GTK_TABLE(table),spin_val_button,0,1,1,2);
	gtk_widget_show(spin_val_button);
	/*設置標簽*/
	label=gtk_label_new("數(shù)值");
	gtk_table_attach_defaults(GTK_TABLE(table),label,0,1,0,1);
	gtk_widget_show(label);

	/*創(chuàng)建調(diào)整對象*/
	adjust=(GtkAdjustment *)gtk_adjustment_new(2,0,6,1,1,0);
	spin_button=gtk_spin_button_new(adjust,0.5, 0);
	g_signal_connect(G_OBJECT(spin_button),"value_changed",G_CALLBACK(spin_button_callback), spin_val_button);
	gtk_table_attach_defaults (GTK_TABLE(table),spin_button,1,2,1,2);
	gtk_widget_show(spin_button);
	/*設置標簽*/
	label=gtk_label_new("小數(shù)位數(shù)");
	gtk_table_attach_defaults(GTK_TABLE(table),label,1,2,0,1);
	gtk_widget_show(label);

	/*創(chuàng)建復選按鈕*/
	check_button=gtk_check_button_new_with_label("僅輸入數(shù)字");
	gtk_box_pack_start(GTK_BOX(box),check_button,FALSE,FALSE,0);
	g_signal_connect(G_OBJECT(check_button),"toggled",G_CALLBACK(check_button_callback), spin_button);
	gtk_widget_show(check_button);

	/*創(chuàng)建橫向盒*/
	box=gtk_hbox_new(FALSE,0);
	gtk_box_pack_start(GTK_BOX(vbox),box,TRUE,TRUE,0);
	gtk_widget_show(box);
	
	/*創(chuàng)建保存按鈕*/
	button=gtk_button_new_with_label("退出");
	gtk_box_pack_start(GTK_BOX(box),button,FALSE,FALSE,0);
	g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(quit_button_callback),window);
	gtk_widget_show(button);
	
	/*創(chuàng)建保存按鈕*/
	button=gtk_button_new_with_label("保存");
	gtk_box_pack_end(GTK_BOX(box),button,FALSE,FALSE,0);
	g_signal_connect(G_OBJECT(button),"clicked",G_CALLBACK(save_button_callback),window);
	gtk_widget_show(button);
	gtk_widget_show(window);
	gtk_main();
}

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 構件
    +關注

    關注

    0

    文章

    14

    瀏覽量

    7954
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    GTK+ 2.0 教程

    Text Entries微調(diào)按鈕 Spin Buttons組合框 Combo Box日歷 Calendar顏色選擇 Color Selection文件選擇 File Selections容器構件
    發(fā)表于 10-21 17:17

    GTK術語表

    的信號不同于 Unix 系統(tǒng)里的信號,雖然名稱相同。 106 singly linked list 單向鏈表 107 spin button 微調(diào)按鈕 108 standard macro 標準宏
    發(fā)表于 10-21 17:17

    【PDF】GTK學習筆記

    在網(wǎng)上找到的,有需要的就下吧目錄:第一章 入門1.1 Hello!World!1.11 第一個 GTK 程序1.12 GTK 的對象導向架構1.2 Signal 與 Callback1.21
    發(fā)表于 03-02 11:54

    GTK---制作linux系統(tǒng)工具

    ubuntu下的GTK的安裝、編譯和測試學習一種新的軟件工具都要從搭建環(huán)境開始,而對于新手搭環(huán)境也是一件苦差事,但是如果有一篇非常好的博文相助的則會事半功倍!廢話不多說,小二?。?!上干貨?。?!1.
    發(fā)表于 04-26 16:31

    LabVIEW設置粗調(diào)和微調(diào)按鈕

    初學labview,請問各位大佬。如何設置兩個按鈕,一個粗調(diào)一個微調(diào),一個按鈕一直按住能夠控制數(shù)值連續(xù)增大,增量一定且也可以設置;另一個按鈕按一下數(shù)值增大一點,增量比前一個
    發(fā)表于 07-27 20:28

    嵌入式硬件構件與底層驅(qū)動構件

    嵌入式硬件構件與底層驅(qū)動構件基本規(guī)范構件化設計嵌入式硬件構件核心構件中間構件終端
    發(fā)表于 10-27 09:01

    GTK應用程序不顯示圖像如何解決?

    你好!我正在使用 STM32MP157C-DK2 板在屏幕上創(chuàng)建一個應用程序(使用 GTK 庫)。我的想法是創(chuàng)建一個窗口,其中包含以下圖像:創(chuàng)建代碼:#include <gtk
    發(fā)表于 02-01 07:27

    基于python的GTK與VTL混合編程及應用

    基于python的GTK與VTL混合編程及應用:采用python語言封裝gtk+與vtk的函數(shù)接口,實現(xiàn)vtk渲染窗口在gtk+界面中的嵌入.通過glade圖形界面生成器生成gtk+圖
    發(fā)表于 03-18 16:04 ?26次下載

    基于GTK+的組合構件設計

    基于GTK+的組合構件設計 圖形用戶界面是用戶與儀器的唯一交互方式,也是整個嵌入式系統(tǒng)一個尤為重要的方面。GTK+即是一個應用于嵌入式圖形界面開發(fā)的良好圖形庫。在
    發(fā)表于 10-15 08:55 ?936次閱讀
    基于<b class='flag-5'>GTK</b>+的組合<b class='flag-5'>構件</b>設計

    GTK信號和回調(diào)函數(shù)

    ? 在 2.0 版,信號系統(tǒng)已從 GTK 移到 GLib,因此在函數(shù)和類型的說明中有前綴 “g_” 而不是 “gtk_”。
    的頭像 發(fā)表于 11-24 08:32 ?2541次閱讀
    <b class='flag-5'>GTK</b><b class='flag-5'>之</b>信號和回調(diào)函數(shù)

    GTK構件雜項構件

    ??標簽(Labels)是GTK中最常用的構件,實際上它很簡單。因為沒有相關聯(lián)的X窗口,標簽不能引發(fā)信號。如果需要獲取或引發(fā)信號,可以將它放在一個事件盒中,或放在按鈕構件里面。
    的頭像 發(fā)表于 11-25 10:20 ?1892次閱讀
    <b class='flag-5'>GTK</b><b class='flag-5'>構件</b><b class='flag-5'>之</b>雜項<b class='flag-5'>構件</b>

    GTK構件雜項構件(2)

    ?GTK(GIMP Toolkit)是一套源碼以LGPL許可協(xié)議分發(fā)、跨平臺的圖形工具包。最初是為GIMP寫的,已成為一個功能強大、設計靈活的一個通用圖形庫,是GNU/Linux下開發(fā)圖形界面
    的頭像 發(fā)表于 11-27 07:53 ?2121次閱讀
    <b class='flag-5'>GTK</b><b class='flag-5'>構件</b><b class='flag-5'>之</b>雜項<b class='flag-5'>構件</b>(2)

    GTK渲染攝像頭圖像數(shù)據(jù)

    —— Linux的API是Xlib。由于GTK和機器的API之間沒有直接接口,移植GTK+就成為移植GLIB和GDK的問題。GDK提供像元的繪制能力以及低層的窗口建立和處理能力。對許多應用來說,使用構件
    的頭像 發(fā)表于 12-01 09:19 ?2284次閱讀

    PyTorch教程14.2微調(diào)

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程14.2微調(diào).pdf》資料免費下載
    發(fā)表于 06-05 14:42 ?0次下載
    PyTorch教程14.2<b class='flag-5'>之</b><b class='flag-5'>微調(diào)</b>

    PyTorch教程16.7自然語言推理:微調(diào)BERT

    電子發(fā)燒友網(wǎng)站提供《PyTorch教程16.7自然語言推理:微調(diào)BERT.pdf》資料免費下載
    發(fā)表于 06-05 10:52 ?0次下載
    PyTorch教程16.7<b class='flag-5'>之</b>自然語言推理:<b class='flag-5'>微調(diào)</b>BERT
    峡江县| 昆明市| 绩溪县| 新河县| 望奎县| 彰武县| 城市| 时尚| 托克逊县| 隆德县| 北流市| 临西县| 铅山县| 贞丰县| 天台县| 昌江| 寿阳县| 水城县| 工布江达县| 祥云县| 佛学| 容城县| 太谷县| 唐山市| 南京市| 多伦县| 无棣县| 乐安县| 常熟市| 读书| 正宁县| 略阳县| 冕宁县| 凌云县| 南丰县| 新河县| 永春县| 江北区| 隆林| 仁化县| 饶阳县|