首页| 论坛| 消息

回复: qt屏保 如何捕获全屏的鼠标事件[已经解决]
#16 [peterlin82 05-12 10:32]
引用第15楼闲雨于2011-05-12 10:25发表的:
peterlin82  你说的这个可以吗?
可以,我这里并没出现任何问题
#17 [gjf123 05-12 11:13]
peterlin82,添个示例程序上来参考一下,感激中。。。
#18 [闲雨 05-12 11:24]
peterlin82
我试过了,是可以,原来是我理解错误了,确实好用,能检测到了
但是我还有疑问,我在//do something这里用qdebug可以看到信息了,但是我想建一个信号,发给我的主程序,主程序通过槽处理 函数,但是不成功,老是出错,不知道你是怎么弄的?
怎么给外面传的参数?
#19 回 18楼(闲雨) 的帖子 [cutemmll 05-12 12:30]
如果用信号不行 就直接用函数调用吧。
再给小例子。
我只贴重要代码了。
头文件
class Application : public QApplication
{
public:
Application(int & argc, char ** argv);
bool notify(QObject *, QEvent *);
void setWindowInstance(MainWindow* wnd);
private:
MainWindow* window; //保存一个你窗体的指针
};
cpp
Application::Application(int &argc, char **argv)
:QApplication(argc,argv)
,window(0)
{
}
void Application::setWindowInstance(MainWindow *wnd)
{
window = wnd;
}
bool Application::notify(QObject *obj, QEvent *e)
{
if(e->type() == QEvent::MouseMove)
{
if(window)
{
window->doSomething(); //调用你窗体相应的函数
}
}
return QApplication::notify(obj,e);
}
main.cpp
int main(int argc, char *argv[])
{
Application app(argc, argv);
MainWindow w;
w.show();
app.setWindowInstance(&w);
return app.exec();
}
#20 Re:回 18楼(闲雨) 的帖子 [闲雨 05-12 12:42]
引用第19楼cutemmll于2011-05-12 12:30发表的 回 18楼(闲雨) 的帖子 :
如果用信号不行 就直接用函数调用吧。
再给小例子。
setWindowInstance
为什么我这里提示没有这个成员呢?

<< 2 3 4 5 >> (4/5)

回复 发表
主题 版块