当前位置:  技术问答>linux和unix

xwindows里怎么向一个窗口发出event

    来源: 互联网  发布时间:2015-09-01

    本文导语:  就是类似于window中的SendMessage这样的函数,在xwindows下有没有对应的 另外,关于xwindows开发方面的资料在哪里找啊,网上好像都只有一些零散的文章 | 同样关注, 寻找志同道合的人一起学习Xwi...

就是类似于window中的SendMessage这样的函数,在xwindows下有没有对应的
另外,关于xwindows开发方面的资料在哪里找啊,网上好像都只有一些零散的文章

|
同样关注, 寻找志同道合的人一起学习Xwindow  ,qq: 9117569     email :li_gh@mail.china.com

|
你可以在www.gtk.org/www.gnome.org去下载源码,在源里有相应的很多实例。
我可以推荐一种方法:就是用LINUX下C开发的信号函数支持你自定义消息。

|
在利用QT Designer设计界面时候可以使用QT库中的slot函数传递。

|
linux下开发一般用qt或者gtk(包括gtk+,gtk--或者叫gtkmm)库,一般都用c/c++语言
qt库在linux下的消息是通过:信号槽机制来处理的,gtkmm比较晚才出,对消息的封装比较好,具体可以参考相关文章,qt库的消息通知如下代码:

//用qt库的例子

#include 
#include 
#include 


int main( int argc, char **argv )
{
    QApplication a( argc, argv );

    QPushButton quit( "Quit", 0 );
    quit.resize( 75, 30 );
    quit.setFont( QFont( "Times", 18, QFont::Bold ) );

    QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) );

    a.setMainWidget( &quit );
    quit.show();
    return a.exec();
}


//QObject::connect( &quit, SIGNAL(clicked()), &a, SLOT(quit()) );
//这里quit的clicked()信号和a的quit()槽连接起来了,所以当这个按钮被按下的时候,
//这个程序就退出了。

-----------------------------------------------------------------------------
                                                   有空交流了~_~ qq:1040745

|
KDE——X Window的一种,就是基于Qt库写出来的。所以Qt库就是你所指的X Window的基础类库(KDE的库应该是再封装了Qt库的吧?)。Qt库有你所指的消息映射功能。
在MFC里头,基础类对象有一些消息处理响应特定的事件——使用postMessage和sendMessage也可以人工触发。
在Qt里头,“基础类”对象有一些“槽”处理特定的信号——也可以使用emit人工触发。任何类(只要包含Q_OBJECT)都会满足信号-槽机制。可以将普通函数定义为信号,或者槽。槽还可以作为信号再触发另外的槽。当然,类似鼠标点击之类的事件全都由类事先定义成为了相应的信号了。

感觉Qt的信号槽机制和MFC的消息映射机制有很多类似的地方,但是Qt更灵活方便。当然,如果读Qt开发的官方文档《C++ GUI programming with Qt3》;你就可以知道Qt的开发者原来就是两个VC的程序员。因此很多MFC的类,将开头的C换成Q,其用法基本上都差不多。比如MFC里有CString、CMessageBox;Qt下面就有QString、QMessageBox。

Qt开发者的初衷就是要写一个真正跨平台的类库。他们做到了,Qt不仅支持Unix/Linux/Mac/Windows,甚至连ucLinux都支持——csdn上搜索的一个文档,作者称QTe甚至是Qt的母集。MFC的功能有多大我们知道,因此Qt的功能有多大我们就不难想象了。

Qt从95年开始真正意义上被人使用,已经得到了巨大的发展。KDE的成功,成就了Qt;而目前X Window
的不足,以及跨平台软件的空白,将会成就更多的人。
好像Java也是跨平台的吧,没接触过,不是狠清楚。然而Qt的编译是兼容VC、C++ Builder、G++的,应该比起JBuilder还是要方便一点吧?

//学习Qt也没有多久,以上观点可能存在不少错误或者片面的地方。欢迎回帖指正。

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • xwindows退出后,logout又回到xwindows的login?怎么回命令行?
  • 在问:RedHat7.0的LILO怎么放进/BOOT里去~~和怎么样装XWINDOWS~顺便介绍下XWINDOWS是什么意思?(OK?需要详细解释)
  • 关于XWindow和控制台之间切换的问题
  • 启动时内核是如何切换到XWindows的?
  • linux下的xwindow显示问题
  • 请问FC5的xwindows下的http服务设置是从哪里获得的?
  • 关于xwindows的使用问题
  • 哥哥们帮忙,关于XWINDOWS
  • xwindow如何删除、重装???
  • 怎么从xwindows到纯字符界面?
  • xwindow不稳定,如何解决?
  • 怎样在命令下 转化xwindow启动的控制台?
  • 怎么退出Xwindows? iis7站长之家
  • 有谁知道怎么退出xwindow?
  • 在linux下怎么画一条直线?只用xwindow。给100分。
  • 关于启动时启xwindow和命令界面的问题
  • XWINDOWS 的问题
  • 我想在一台RedHat Linux7.3上,远程安装Xwindow
  • 请教一个关于Xwindow的问题
  • 瞎折腾,系统不能启动Xwindow了


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3