社区
Qt
帖子详情
QT 求助
syhhl007
2009-11-10 12:50:02
1.点击最小化按钮的事件是什么?
我想重写最小化的事件,实现点击最小化按钮后显示为系统托盘,我先用event->ignore()处理好像不行。
2.QTextEdit里如何高亮光标所在的一整行?
...全文
393
13
打赏
收藏
QT 求助
1.点击最小化按钮的事件是什么? 我想重写最小化的事件,实现点击最小化按钮后显示为系统托盘,我先用event->ignore()处理好像不行。 2.QTextEdit里如何高亮光标所在的一整行?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
yb0824
2009-11-11
打赏
举报
回复
http://nanzhuotong.blogspot.com/2005/08/qdialog.html
yb0824
2009-11-11
打赏
举报
回复
google上查的,呵呵
syhhl007
2009-11-11
打赏
举报
回复
的确有效,高手啊~~~
请问你是怎么查的啊,有方法嘛?
yb0824
2009-11-10
打赏
举报
回复
QApplication 对象调用setQuitOnLastWindowClosed( false );
yb0824
2009-11-10
打赏
举报
回复
等高手来了~~~
syhhl007
2009-11-10
打赏
举报
回复
请问这个如何解决~~
void Alarm::closeEvent(QCloseEvent *event)
{
int r=QMessageBox::information(0,"Quit",tr("确定退出?"),QMessageBox::Yes | QMessageBox::No );
if(r==QMessageBox::Yes)
{
save();
trayIcon->hide();
}
else if(r==QMessageBox::No)
{
trayIcon->show();
hide();
event->ignore();//当在只显示托盘图标的情况下,点击NO后,程序就自动结束了。可能是因为messagebox窗口关闭后会导致窗口结束。不知道如何修改。
}
}
}
如果主窗口是显示的时候(不是只有系统图盘图标情况下)点击NO后不会关闭窗口的(event->ignore()实现了),但如果只显示托盘图标的情况下就实现不了
yb0824
2009-11-10
打赏
举报
回复
qt 我也刚接触,很多东西都搞不清楚
Qt::DirectConnection 好像才是立即执行,Qt::QueuedConnection是放到消息队列,
syhhl007
2009-11-10
打赏
举报
回复
谢谢楼上的,这个可以实现最小化到系统托盘
Qt::QueuedConnection这个好像是等候消息发出成功。
请问为什么要这么做啊?
yb0824
2009-11-10
打赏
举报
回复
试下呢
connect(this, SIGNAL(mySignal(), this, SLOT(hide()), Qt::QueuedConnection);
void Alarm::changeEvent(QEvent *event)
{
if (event->type() == QEvent::WindowStateChange)
{
if (isMinimized())
{
emit mySignal();
event->ignore();
}
}
syhhl007
2009-11-10
打赏
举报
回复
貌似只有当主窗口是显示的时候event->ignore()才有效。
当只显示托盘图标时,主窗口时隐藏的,所以按NO后messagebox消失,程序也就结束了。
syhhl007
2009-11-10
打赏
举报
回复
我把代码修改如下,但并没有预期的效果,请看我的注释
void Alarm::changeEvent(QEvent *event)
{
if (event->type() == QEvent::WindowStateChange)
{
if (isMinimized())
{
trayIcon->show();
hide();//点击最小化后任务栏上仍然有程序的窗口图标,但由于hide了,所以点击窗口图标后看到的是白框
event->ignore();
}
}
void Alarm::closeEvent(QCloseEvent *event)
{
int r=QMessageBox::information(0,"Quit",tr("确定退出?"),QMessageBox::Yes | QMessageBox::No );
if(r==QMessageBox::Yes)
{
save();
trayIcon->hide();
}
else if(r==QMessageBox::No)
{
trayIcon->show();
hide();
event->ignore();//当在只显示托盘图标的情况下,点击NO后,程序就自动结束了。可能是因为messagebox窗口关闭后会导致窗口结束。不知道如何修改。
}
}
}
如果主窗口是显示的时候(不是只有系统图盘图标情况下)点击NO后不会关闭窗口的(event->ignore()实现了),但如果只显示托盘图标的情况下就实现不了。
Michael_Xie
2009-11-10
打赏
举报
回复
试试这个看看
void MainWindow::changeEvent(QEvent *event)
{
if (event->type() == QEvent::WindowStateChange)
{
if (isMinimized())
{
//...
}
}
QMainWindow::changeEvent(event);
}
yb0824
2009-11-10
打赏
举报
回复
http://lists.trolltech.com/qt-interest/2008-01/thread00238-0.html
QT
职工工资管理系统.zip
QT
职工工资管理系统 (在淘宝上委托或者
求助
学长的话,可不止这个价格哦,淘宝大概200,学长的话,还要看学长心情 系统功能如下: 1.创建和管理职工信息的对象; 2.创建和管理月工资信息的对象; 3.增加和删除...
GUIDesignStudio汉化破解版(直接安装)
由于脱壳后资源文件重建有问题,经PASSOLO 6汉化后程序无法正常运行,后在“Windows 汉化技术”论坛
求助
,在论坛的兄弟姐妹们的帮助下问题得以解决,终于推出本汉化版。 对于 乾、CxLrb、决斗、东东5712 等大侠的...
Emotionless:婴儿Playstation 2仿真器。 不使用
我还没有找到文档,因此我们可能不得不
求助
于基于MIPS或PCSX2代码的文档。 创建一个基本的
Qt
UI 创建一个基本的
Qt
调试器 目标 干净的代码 尽可能少的hacks和kudges 只要它仍然可以在现代计算机上
中国象棋C++代码
undoView->setAttribute(
Qt
::WA_QuitOnClose, false); } void Chess_ZN::init(){ createActions(); createMenus(); menubar = new QMenuBar; for (int i = 0; i ; i++) { action1[i]->setMenu(menu[i]); ...
QT
求助
我想做一个关于购物车的
qt
项目 有人知道如何使数据库查询后的结果(点菜界面)在另一个界面(购物车界面)的tableview上显示吗
Qt
16,212
社区成员
26,592
社区内容
发帖
与我相关
我的任务
Qt
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
复制链接
扫一扫
分享
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章