久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3991|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

GTK窗口布局管理--Fixed Container和Expanders

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:72519 發(fā)表于 2015-1-23 19:57 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
Fixed Container故名之意就是固定容器,它容許把控件放到一個(gè)固定容器中,并能隨意到移動(dòng)到某個(gè)位置[相對于窗口的左上方]。雖然它能隨意移動(dòng),但有很多弊端,比如容器的大小它會(huì)隨字體的大小的改變而改變,從而可能會(huì)出現(xiàn)控件覆蓋控件的現(xiàn)象;又如在多語言中,我們都知道阿拉伯語到單詞大部分都比E文單詞都要長,如果從E語切換到阿拉伯語或其它語言時(shí),固定容器的在水平方向?qū)?huì)發(fā)生伸縮等現(xiàn)象明顯是用戶所不能接受的。所以不推薦使用fixed container。下面是一個(gè)對Fixed Container的簡單實(shí)例:/**********************************
**
**FILE:         fixedgtk+.c
**DATE:         20090508 20:49
**AUTHOR:       LAMMY
**VERSION:      0.1
**
**********************************/

#include<gtk/gtk.h>

typedef struct ComButton_s
{
        GtkWidget *m_pParentWidget;
        GtkWidget *m_pSelfWidget;
        guint32 m_nPox;
        guint32 m_nPoy;
}ComButton_t;

gboolean _CallBackMove(GtkWidget *pHwidget, ComButton_t *pComButton)
{
        static guint32 nPox = 0;
        static guint32 nPoy = 0;

        nPox += 5;
        nPoy += 5;
        pComButton->m_nPox = nPox;
        pComButton->m_nPoy = nPoy;

        gtk_fixed_move(GTK_FIXED(pComButton->m_pParentWidget), pComButton->m_pSelfWidget, pComButton->m_nPox, pComButton->m_nPoy);

        return 0;
}
int main(int argc, char *argv[])
{
        GtkWidget *pHwindow, *pHfixed, *pHbuttonOne, *pHbuttonTWO;
        ComButton_t ComButton;

        gtk_init(&argc, &argv);
        pHwindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_title(GTK_WINDOW(pHwindow), "gtkfixedgtk+");
        gtk_widget_set_size_request(pHwindow, 200, 250);
        gtk_container_set_border_width(GTK_WINDOW(pHwindow), 10);

        pHfixed = gtk_fixed_new();
        pHbuttonOne = gtk_button_new_with_label("ButtonOne");
        pHbuttonTWO = gtk_button_new_with_label("ButtonTwo");

        gtk_fixed_put(GTK_FIXED(pHfixed), pHbuttonOne, 0,0);
        gtk_fixed_put(GTK_FIXED(pHfixed), pHbuttonTWO, 80, 150);

        ComButton.m_pParentWidget = pHfixed;
        ComButton.m_pSelfWidget = pHbuttonOne;

        g_signal_connect(pHbuttonOne, "clicked", G_CALLBACK(_CallBackMove), &ComButton);
        gtk_container_add(GTK_WINDOW(pHwindow), pHfixed);
        gtk_widget_show_all(pHwindow);

        gtk_main();

        return 0;
}Exapnder有擴(kuò)展之意,expander容器只允許有一個(gè)子控件,通過點(diǎn)擊expander容器可以伸展或隱藏其子控件。以下是一個(gè)對Expander的簡單實(shí)例:
/**********************************
**
**FILE:         expandergtk+.c
**DATE:         200905010 22:49
**AUTHOR:       LAMMY
**VERSION:      0.0
**
**********************************/

#include<gtk/gtk.h>

int main(int argc, char *argv)
{
        GtkWidget *pHwindow, *pHexpander, *pHlabel;

        gtk_init(&argc, &argv)  ;
        pHwindow = gtk_window_new(GTK_WINDOW_TOPLEVEL);
        gtk_window_set_title(GTK_WINDOW(pHwindow), "expandergtk+");
        gtk_widget_set_size_request(pHwindow, 150, 250);
        gtk_container_set_border_width(GTK_CONTAINER(pHwindow), 10);

        pHexpander = gtk_expander_new_with_mnemonic("Click _Me For More");
        pHlabel = gtk_label_new_with_mnemonic("Hide or Show Label");
        gtk_container_add(GTK_EXPANDER(pHexpander), pHlabel);

        //g_signal_connect();
        gtk_container_add(GTK_WINDOW(pHwindow), pHexpander);
        gtk_widget_show_all(pHwindow);
        gtk_main();

        return 0;
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美一级大片 | 国产精品久久久久久久久久久久 | 色久影院| 免费精品 | 国产免费一区二区三区 | 国产亚洲欧美在线 | 免费观看成人性生生活片 | 日韩视频一区二区 | av网站免费观看 | 色网在线看 | 国产成人免费视频网站视频社区 | 中文字幕亚洲国产 | 91精品国产综合久久久久久丝袜 | 欧美日韩久久精品 | 亚洲综合日韩精品欧美综合区 | 午夜伦理影院 | 九九色九九 | 人人干免费 | 久久精品亚洲 | 日韩视频中文字幕 | 国产精品久久久久久久一区探花 | 亚洲一区二区av | 中文字幕日韩一区 | 99久久婷婷国产综合精品电影 | 成人在线一区二区 | 成年免费大片黄在线观看一级 | 成人国产午夜在线观看 | 波多野吉衣久久 | jdav视频在线观看免费 | 国产亚洲一区在线 | 91综合在线观看 | 亚洲一区三区在线观看 | 在线免费小视频 | 一区二区三区不卡视频 | 成人久久18免费网站麻豆 | 国产乱码精品一区二区三区中文 | 欧美黄色一区 | 欧美一区二区三区视频在线播放 | 日韩精品在线视频 | 日本a视频 | 成人在线免费看 |