Chinaunix首页 | 论坛 | 博客
  • 博客访问: 52582
  • 博文数量: 22
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 295
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-22 16:48
文章分类
文章存档

2009年(2)

2008年(20)

我的朋友

分类: LINUX

2008-11-04 09:30:32

看这么长的英文资料还是第一次,多亏老婆的加油还有老婆陪着一块看书,不然很难坚持下来
  
    1.第一到二章是教怎么安装gtkmm的,所以略去不说
    2.第三章是才是经典HelloWorld,我所看到的内容重点有
  (1).#include
  (2).Gtk::Main kit(argc, argv);kit分析命令行,是否有Gtk::Main可用的参数,把其它参数留你(程序员),手册的字面意思是这个,具体还没有接触到,现在也用不着,就先放一放
  (3).Gtk::Main::run(window);来进入消息循环
  (4).编译要用命令
g++ *.cc -o helloworld `pkg-config gtkmm-2.4 --cflags --libs`
其中gtkmm-2.4要根据gtk的版本,“`”这个符号是Tab上边的那个也就是“1”左边的那个,我还以为是单引号试了半天不行,但复制的就能运行-_-
  (5).接下来的autotools设置也忽略了
  (6).发现按钮、列表框、……之的小窗口在Windows里叫Controls在gtkmm里叫Widgets,难怪以前看些C/C++的书其中的例子好多都用Widget原来这么流行,还有一个GUI类库就叫wxWidgets,在Windows下叫Message在Gtkmm下叫Signal
  (7).还有字符串最好用Glib::ustring
  (8).还有一个更迷人的就是libglademm还可以把界面设计和写代码分开,实在是太棒了
  (9).把信号(Signal)和信号处理函数关联起来用m_button.signal_clicked().connect(sigc::mem_fun(*this,
        &HelloWorld::on_button_clicked));
    3.第四章主要讲Buttons家族的Widget,用Windows里的名字就叫,按钮、开关按钮、复选框、单选框
  (1).开关按最好用toggled()函数来改变状态,也可以用set_active()来设置,用get_active()取回状态
  (2).单选还复选按钮都继承于开关按钮所以也可以用上面函数
  (3).用下列两种方法把单选按钮设置成一组
Gtk::RadioButton::Group group = m_rb1.get_group();
m_rb2.set_group(group);
m_rb3.set_group(group);
注意不能像下面这么用,因为set_group()函数要改变group对象而get_group()返回的是const型的
m_rb2.set_group(m_rb1.get_group()); //doesn't work
也可以用面方法设置单选按钮的组
Gtk::RadioButton::Group group;
 Gtk::RadioButton *m_rb1 = Gtk::manage(
     new Gtk::RadioButton(group,"button1"));
 Gtk::RadioButton *m_rb2 = manage(
     new Gtk::RadioButton(group,"button2"));
 Gtk::RadioButton *m_rb3 = manage(
     new Gtk::RadioButton(group,"button3"));
不明白是怎么实现的,为是什么是用局部变量,可能是RadioButton内部记着group id之类的东西吧
    4.第五章主要是像Windows下面的滚动条一类的Widget,还有调时间用的那个带两个小箭头的,等等可以在一个范围内调整的Widget,有用的函数有:
set_draw_value()
set_digits()
set_draw_pos()
信号有:
value_changed()
    5.第六章其它一些常用的Widget,有标签(label),文本框(entry),SpinButton(不知道中文应该叫什么,就是上面说的调时间用的),进度条(ProgressBar),工具提示(Tooltips)

阅读(739) | 评论(1) | 转发(0) |
0

上一篇:linux下autotools的试用

下一篇:gtkmm学习glade

给主人留下些什么吧!~~

chinaunix网友2008-11-05 10:00:59

加油啊,现在的社会进步了,女人的地位升高了,你不学习就要挨打了,哈哈,加油