色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

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

GTK構(gòu)件之雜項(xiàng)構(gòu)件

嵌入式技術(shù) ? 來源:嵌入式技術(shù) ? 作者:嵌入式技術(shù) ? 2022-11-25 10:20 ? 次閱讀

1.標(biāo)簽 lable

??標(biāo)簽(Labels)是GTK中最常用的構(gòu)件,實(shí)際上它很簡(jiǎn)單。因?yàn)闆]有相關(guān)聯(lián)的X窗口,標(biāo)簽不能引發(fā)信號(hào)。如果需要獲取或引發(fā)信號(hào),可以將它放在一個(gè)事件盒中,或放在按鈕構(gòu)件里面。

1.1 相關(guān)接口函數(shù)

/*創(chuàng)建標(biāo)簽*/
GtkWidget*gtk_label_new (const gchar *str);
GtkWidget*gtk_label_new_with_mnemonic (const gchar *str)
/*設(shè)置標(biāo)簽對(duì)齊方式*/
void gtk_label_set_justify (GtkLabel *label,GtkJustification jtype);
  jtype參數(shù):
    GTK_JUSTIFY_LEFT,//左對(duì)齊
    GTK_JUSTIFY_RIGHT,//右對(duì)齊
    GTK_JUSTIFY_CENTER,//居中
GTK_JUSTIFY_FILL//充滿
/*獲取標(biāo)簽內(nèi)容*/
const gchar *gtk_label_get_label (GtkLabel *label)
/*設(shè)置標(biāo)簽自動(dòng)換行*/
void gtk_label_set_line_wrap (GtkLabel *label,gboolean wrap)
/*添加下劃線*/
voidgtk_label_set_pattern (GtkLabel *label,const gchar *pattern)

1.2 標(biāo)簽示例

pYYBAGOAJoeAACkdAAGLuouDHn4241.png#pic_center
#include 
gint window_event_callback(GtkWidget *widget,gpointer data)
{
	g_print("close windown");
	return FALSE;
}
void Window_close_callback(GtkObject *obj)
{
	gtk_main_quit();
}
int main(int argc,char **argv)
{

	GtkWidget *window;
	GtkWidget *hbox,*vbox;
	GtkWidget *frame;
	GtkWidget *label;
	gtk_init(&argc,&argv);
	window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
	gtk_window_set_title(GTK_WINDOW(window),"GTK");
	gtk_container_set_border_width(GTK_CONTAINER(window),2);
	g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(window_event_callback),NULL);
	g_signal_connect_swapped(G_OBJECT(window),"destroy",G_CALLBACK(Window_close_callback),NULL);

	/*創(chuàng)建盒*/
	hbox=gtk_hbox_new(FALSE,2);
	vbox=gtk_vbox_new(FALSE,2);
	/*將橫向盒添加到窗口*/
	gtk_container_add(GTK_CONTAINER(window),hbox);
	/*將縱向盒放入橫向盒中*/
	gtk_box_pack_start(GTK_BOX(hbox),vbox,FALSE,FALSE,2);
	/*創(chuàng)建一個(gè)框架構(gòu)件*/
	frame=gtk_frame_new("標(biāo)簽1");
	label=gtk_label_new("這是一個(gè)框構(gòu)件!");
   /*添加下劃線*/
	gtk_label_set_pattern (GTK_LABEL(label),"_______________________");
	/*將標(biāo)簽放入框架構(gòu)件中*/
	gtk_container_add(GTK_CONTAINER(frame),label);
	/*將框架構(gòu)件放入組裝盒中*/
	gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0);

	/*創(chuàng)建框架構(gòu)件*/
	frame=gtk_frame_new("名言");
	label=gtk_label_new("與其臨淵羨魚,n    不如退而結(jié)網(wǎng)!");
	gtk_container_add(GTK_CONTAINER(frame),label);
	gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0);

	/*創(chuàng)建框架構(gòu)件*/
	frame=gtk_frame_new("左對(duì)齊");
	label=gtk_label_new("種一棵樹最好的時(shí)間時(shí)十年前,n"
						"其次是現(xiàn)在。");
	gtk_label_set_justify(GTK_LABEL(label),GTK_JUSTIFY_LEFT);
	gtk_container_add(GTK_CONTAINER(frame),label);
	gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0);

	/*創(chuàng)建框架構(gòu)件*/
	frame=gtk_frame_new("右對(duì)齊");
	label=gtk_label_new("GTK 標(biāo)簽n右對(duì)齊示例");
	gtk_container_add(GTK_CONTAINER(frame),label);
	gtk_label_set_justify(GTK_LABEL(label),GTK_JUSTIFY_RIGHT);
	gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0);
	
	vbox=gtk_vbox_new(FALSE,5);
	gtk_box_pack_start(GTK_BOX(hbox),vbox,FALSE,FALSE,5);
	frame=gtk_frame_new("將進(jìn)酒");
	/*設(shè)置輪廓樣式*/
	gtk_frame_set_shadow_type(GTK_FRAME(frame),GTK_SHADOW_ETCHED_OUT);
	label=gtk_label_new("李白n"

		"君不見黃河之水天上來,奔流到海不復(fù)回。n"
		"君不見高堂明鏡悲白發(fā),朝如青絲暮成雪。n"
		"人生得意須盡歡,莫使金樽空對(duì)月。n"
		"天生我材必有用,千金散盡還復(fù)來。n"
		"天生我材必有用,千金散盡還復(fù)來。n"
		"烹羊宰牛且為樂,會(huì)須一飲三百杯。n"
		"岑夫子,丹丘生,將進(jìn)酒,杯莫停。n"
		"與君歌一曲,請(qǐng)君為我傾耳聽。n"
		"鐘鼓饌玉不足貴,但愿長(zhǎng)醉不愿醒。n"
		"古來圣賢皆寂寞,惟有飲者留其名。n"
		"陳王昔時(shí)宴平樂,斗酒十千恣歡謔。n"
		"主人何為言少錢,徑須沽取對(duì)君酌。n"
		"五花馬,千金裘,呼兒將出換美酒,與爾同銷萬(wàn)古愁。");
	gtk_label_set_justify(GTK_LABEL(label),GTK_JUSTIFY_CENTER);
	gtk_container_add(GTK_CONTAINER(frame),label);
	gtk_box_pack_start(GTK_BOX(vbox),frame,FALSE,FALSE,0);
	
	gtk_widget_show_all(window);
	gtk_main();
	return 0;
}

2.箭頭Arrows

??箭頭構(gòu)件(Arrow widget)畫一個(gè)箭頭,面向幾種不同的方向,并有幾種不同的風(fēng)格。在許多應(yīng)用程序中,常用于創(chuàng)建帶箭頭的按鈕。和標(biāo)簽構(gòu)件一樣,它不能引發(fā)信號(hào)。

/*創(chuàng)建箭頭*/
GtkWidget*gtk_arrow_new (GtkArrowType arrow_type,GtkShadowType shadow_type);
形參:
     arrow_type  --箭頭方向
         GTK_ARROW_UP,  --上
         GTK_ARROW_DOWN,  --下
         GTK_ARROW_LEFT,  --左
         GTK_ARROW_RIGHT, --右
         GTK_ARROW_NONE  --無(wú)箭頭
         shadow_type  --箭頭風(fēng)格
/*設(shè)置箭頭屬性*/
gtk_arrow_set(GtkArrow * arrow, GtkArrowType arrow_type, GtkShadowType shadow_type)

2.1 箭頭示例

poYBAGOAJoiAPAwWAAAmBKv6IDM753.png#pic_center

??創(chuàng)建箭頭,將箭頭放入按鈕中,再創(chuàng)建一個(gè)組裝盒,將按鈕放到盒中。

#include 
gint window_event_callback(GtkWidget *widget,gpointer data)
{
	g_print("close windown");
	return FALSE;
}
void Window_close_callback(GtkObject *obj)
{
	gtk_main_quit();
}
/*創(chuàng)建一個(gè)帶箭頭的按鈕
GtkArrowType --箭頭方向
GtkShadowType --箭頭輪廓
返回值:返回按鈕對(duì)象

*/
GtkWidget *gtk_Arrow_button_create(GtkArrowType arrow_type,GtkShadowType shadow_type)
{
	GtkWidget *button;
	GtkWidget *arrow;
	/*1.創(chuàng)建按鈕*/
	button=gtk_button_new();
	/*創(chuàng)建箭頭*/
	arrow=gtk_arrow_new(arrow_type, shadow_type);
	/*將箭頭放入按鈕中*/
	gtk_container_add(GTK_CONTAINER(button),arrow);
	gtk_widget_show(arrow);
	gtk_widget_show(arrow);
	return button;
}
int main(int argc,char **argv)
{

	GtkWidget *window;
	GtkWidget *hbox;
	GtkWidget *button;
	gtk_init(&argc,&argv);
	window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
	gtk_window_set_title(GTK_WINDOW(window),"GTK");
	gtk_container_set_border_width(GTK_CONTAINER(window),2);
	g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(window_event_callback),NULL);
	g_signal_connect_swapped(G_OBJECT(window),"destroy",G_CALLBACK(Window_close_callback),NULL);
	/*1.創(chuàng)建橫向盒*/
	hbox=gtk_hbox_new(FALSE,0);
	//將盒添加到窗口
	gtk_container_add(GTK_CONTAINER(window),hbox);
	/*2.創(chuàng)建帶箭頭按鈕*/
	button=gtk_Arrow_button_create(GTK_ARROW_UP,GTK_SHADOW_IN);
	gtk_box_pack_start(GTK_BOX(hbox),button, TRUE,FALSE,5);

	button=gtk_Arrow_button_create(GTK_ARROW_DOWN,GTK_SHADOW_OUT);
	gtk_box_pack_start(GTK_BOX(hbox),button, TRUE,FALSE,5);

	button=gtk_Arrow_button_create(GTK_ARROW_LEFT,GTK_SHADOW_ETCHED_IN);
	gtk_box_pack_start(GTK_BOX(hbox),button, TRUE,FALSE,5);

	button=gtk_Arrow_button_create(GTK_ARROW_RIGHT,GTK_SHADOW_ETCHED_OUT);
	gtk_box_pack_start(GTK_BOX(hbox),button, TRUE,FALSE,5);
	
	gtk_widget_show_all(window);
	gtk_main();
	return 0;
}

3 工具提示對(duì)象The Tooltips Object

? 工具提示對(duì)象(Tooltips)就是當(dāng) 鼠標(biāo)指針移到按鈕或其它構(gòu)件上并停留幾秒時(shí),彈出的文本串。

不接收事件的構(gòu)件(沒有自己的X窗口的構(gòu)件)不能和工具提示對(duì)象一起工作。可以使用 gtk_tooltips_new()函數(shù)創(chuàng)建工具提示對(duì)象。因?yàn)镚tkTooltips對(duì)象可以重復(fù)使用,一般在應(yīng)用程序中僅需要調(diào)用這個(gè)函數(shù)一次。

3.1 相關(guān)接口函數(shù)

/*創(chuàng)建工具提示對(duì)象,創(chuàng)建成功默認(rèn)已經(jīng)激活*/
GtkTooltips *gtk_tooltips_new( void );
/*設(shè)置提示信息*/
void gtk_tooltips_set_tip( GtkTooltips *tooltips,GtkWidget *widget,const 
gchar *tip_text,const gchar *tip_private );
形參:tooltips  --創(chuàng)建的工具提示對(duì)象
      widget  --要設(shè)置提示信息的構(gòu)件
      tip_text  --提示的內(nèi)容
      tip_private --標(biāo)識(shí)符的文本串,當(dāng)用GtkTipsQuery實(shí)現(xiàn)上下文敏感的幫助時(shí)要引用該標(biāo)識(shí)符。目前,你可以把它設(shè)置為 NULL. 
/*激活已經(jīng)禁用的工具提示對(duì)象*/
void gtk_tooltips_enable( GtkTooltips *tooltips);
/*禁用已經(jīng)激活的工具提示對(duì)象*/
void gtk_tooltips_disable( GtkTooltips *tooltips ); 
/*改變工具提示的延遲時(shí)間*/
void gtk_tooltips_set_delay(GtkTooltips *tooltips,guint delay);

3.2 示例

#include 
gint window_event_callback(GtkWidget *widget,gpointer data)
{
	g_print("close windown");
	return FALSE;
}
void Window_close_callback(GtkObject *obj)
{
	gtk_main_quit();
}

int main(int argc,char **argv)
{
	GtkWidget *window;
	GtkWidget *button;
	GtkTooltips *tiptool;
	gtk_init(&argc,&argv);
	window=gtk_window_new(GTK_WINDOW_TOPLEVEL);
	gtk_window_set_title(GTK_WINDOW(window),"GTK");
	gtk_container_set_border_width(GTK_CONTAINER(window),2);
	g_signal_connect(G_OBJECT(window),"delete_event",G_CALLBACK(window_event_callback),NULL);
	g_signal_connect_swapped(G_OBJECT(window),"destroy",G_CALLBACK(Window_close_callback),NULL);
	/*1.創(chuàng)建按鈕*/
	button=gtk_button_new_from_stock(GTK_STOCK_QUIT);
	gtk_container_add(GTK_CONTAINER(window),button);
	/*創(chuàng)建提示對(duì)象工具*/
	tiptool=gtk_tooltips_new();
	/*添加提示信息到按鈕*/
	gtk_tooltips_set_tip(tiptool,button,"退出按鈕",NULL);

	gtk_widget_show_all(window);
	gtk_main();
	return 0;
}

審核編輯:湯梓紅

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

    關(guān)注

    0

    文章

    14

    瀏覽量

    7771
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    GTK+ 2.0 教程

    滾動(dòng)條構(gòu)件 Scrollbar Widgets比例構(gòu)件 Scale Widgets創(chuàng)建一個(gè)比例構(gòu)件函數(shù)和信號(hào)(至少講了函數(shù))常用的范圍函數(shù)設(shè)置更新方式獲得和設(shè)置調(diào)整對(duì)象鍵盤和鼠標(biāo)綁定示例雜項(xiàng)
    發(fā)表于 10-21 17:17

    面向無(wú)線傳感網(wǎng)絡(luò)的構(gòu)件化開發(fā)方法

    摘要:構(gòu)件化的開發(fā)模式使開發(fā)者在開發(fā)過程中能充分調(diào)用構(gòu)件庫(kù)中現(xiàn)有的構(gòu)件為其服務(wù)。研究了構(gòu)件化開發(fā)模式的方法和特點(diǎn),針對(duì)目前無(wú)線傳感器網(wǎng)絡(luò)協(xié)議開發(fā)方法中的缺陷,提出一種由應(yīng)用層
    發(fā)表于 11-02 15:43

    嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件相關(guān)資料推薦

    慕課蘇州大學(xué).嵌入式開發(fā)及應(yīng)用.第二章.入門與軟件框架.嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件基本規(guī)范0 目錄2 入門與軟件框架2.1 嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件基本規(guī)范2.1.1 課堂重點(diǎn)2
    發(fā)表于 10-27 07:05

    嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件

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

    構(gòu)件方法進(jìn)行GPIO應(yīng)用編程

    慕課蘇州大學(xué).嵌入式開發(fā)及應(yīng)用.第二章.入門與軟件框架.用構(gòu)件方法進(jìn)行GPIO應(yīng)用編程0 目錄2 入門與軟件框架2.3 用構(gòu)件方法進(jìn)行GPIO應(yīng)用編程2.3.1 課堂重點(diǎn)2.3.2 測(cè)試與作業(yè)3 下一章0 目錄2 入門與軟件框架2.3 用
    發(fā)表于 11-08 07:35

    UART驅(qū)動(dòng)構(gòu)件的設(shè)計(jì)方法

    慕課蘇州大學(xué).嵌入式開發(fā)及應(yīng)用.第二章.入門與軟件框架.UART驅(qū)動(dòng)構(gòu)件的設(shè)計(jì)方法0 目錄2 入門與軟件框架2.1 UART驅(qū)動(dòng)構(gòu)件的設(shè)計(jì)方法2.1.1 課堂重點(diǎn)2.1.2 測(cè)試與作業(yè)3 下一章0
    發(fā)表于 11-08 07:50

    GPIO構(gòu)件封裝方法與規(guī)范

    文章目錄1、GPIO構(gòu)件封裝方法與規(guī)范2、利用構(gòu)件方法控制小燈閃爍3、工程文件組織框架與第一個(gè)C語(yǔ)言工程分析1、GPIO構(gòu)件封裝方法與規(guī)范構(gòu)件封裝建議、必要性與優(yōu)點(diǎn)建議按底層硬件操作功
    發(fā)表于 11-08 06:58

    Flash在線編程構(gòu)件的使用

    慕課蘇州大學(xué).嵌入式開發(fā)及應(yīng)用.第三章.基本模塊.Flash在線編程構(gòu)件的使用0 目錄3 基本模塊3.7 Flash在線編程構(gòu)件的使用3.7.1 課堂重點(diǎn)3.7.2 測(cè)試與作業(yè)4 下一章0 目錄3
    發(fā)表于 12-20 07:41

    FLASH在線編程構(gòu)件的設(shè)計(jì)方法

    慕課蘇州大學(xué).嵌入式開發(fā)及應(yīng)用.第三章.基本模塊.FLASH在線編程構(gòu)件的設(shè)計(jì)方法0 目錄3 基本模塊3.8 FLASH在線編程構(gòu)件的設(shè)計(jì)方法3.8.1 課堂重點(diǎn)3.8.2 測(cè)試與作業(yè)4 下一章0
    發(fā)表于 12-20 07:57

    構(gòu)件內(nèi)聚性度量方法研究

    構(gòu)件的內(nèi)聚性度量是衡量構(gòu)件質(zhì)量的一個(gè)重要指標(biāo)。度量構(gòu)件內(nèi)聚度的經(jīng)典方法程序切片,由于切片劃分的不同,其度量值不同。本文不僅很好地度量構(gòu)件的內(nèi)聚度且度量值唯一。
    發(fā)表于 01-09 11:58 ?7次下載

    基于GTK+的組合構(gòu)件設(shè)計(jì)

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

    嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件基本規(guī)范

    嵌入式硬件構(gòu)件與底層驅(qū)動(dòng)構(gòu)件基本規(guī)范構(gòu)件化設(shè)計(jì)嵌入式硬件構(gòu)件核心構(gòu)件中間構(gòu)件終端
    發(fā)表于 10-20 13:36 ?6次下載
    嵌入式硬件<b class='flag-5'>構(gòu)件</b>與底層驅(qū)動(dòng)<b class='flag-5'>構(gòu)件</b>基本規(guī)范

    GTK構(gòu)件雜項(xiàng)構(gòu)件(2)

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

    GTK構(gòu)件微調(diào)按鈕

    ? 微調(diào)按鈕(Spin Button)構(gòu)件通常用于讓用戶從一個(gè)取值范圍你選擇一個(gè)值。它由一個(gè)文本輸入框和旁邊的向上和向下兩個(gè)按鈕組成。點(diǎn)擊某一個(gè)按鈕會(huì)讓文本輸入框里的數(shù)值大小在一定范圍你改變。文本輸入框里也可以直接輸入一個(gè)特定值。
    的頭像 發(fā)表于 11-30 09:50 ?1285次閱讀
    <b class='flag-5'>GTK</b><b class='flag-5'>構(gòu)件</b><b class='flag-5'>之</b>微調(diào)按鈕

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

    —— Linux的API是Xlib。由于GTK和機(jī)器的API之間沒有直接接口,移植GTK+就成為移植GLIB和GDK的問題。GDK提供像元的繪制能力以及低層的窗口建立和處理能力。對(duì)許多應(yīng)用來說,使用構(gòu)件
    的頭像 發(fā)表于 12-01 09:19 ?1149次閱讀
    主站蜘蛛池模板: 欧美三级aaa| 禁漫H天堂免费A漫| 国产在线精彩亚洲久久| 欧美性xxx极品| 中文在线观看永久免费| 精品人妻一区二区三区视频53 | 在教室伦流澡到高潮H免费视频| 国产女人视频免费观看| 四虎免费影院| 国产 日韩 欧美 综合 激情| 日韩亚洲欧美中文高清在线| 爱啪国产精品视频在线| 日本50人群体交乱| 成人在线高清不卡免费视频| 色婷婷欧美在线播放内射| 国产高清视频a在线大全| 少男同志freedeos| 国产精品第十页| 亚洲成在人线视频| 精油按摩日本| 在线观看永久免费网址| 老阿姨才是最有味的一区二区 | 亚洲欧美韩国综合色| 精品国产午夜肉伦伦影院| 依恋影院在线观看| 美女扒开尿口让男生添动态图| 中文字幕在线久热精品| 欧美一级成人影院免费的| 疯狂小护士| 亚洲看片网站| 久久中文字幕乱码免费| japonensis护士| 丝袜美女被啪啪不带套漫画| 国产在线高清视频无码不卡| 伊人国产在线观看| 欧美18在线| 国产高清视频免费在线观看| 亚洲精品久久无码AV片WWW| 两个人的视频hd全免费| 成人免费看片45分钟| 新版孕妇bbwbbwbbw|