QT ToolBar 工具栏浮动状态
想实时获取到 QT ToolBar 工具栏浮动的状态,以实时调整窗体的布局。 先使用查找引擎,发现找不到什么有用的文章。 只能查 QT Help,最后获取到使用 SIGNAL topLevelChanged 可以达到目的。
于是写了如下的代码,没有使用 QT IDE 集成环境的提示(失败在这里,在自己还不熟悉 QT SIGNAL 的情况下):
1 | connect(toolBar,SIGNAL(topLevelChanged()), this ,SLOT(toolBarFloat())); |
定义 SLOT toolBarFloat:
1 2 3 4 | void MainWindow::toolBarFloat( bool topLevel) { qDebug() << "toolBar floating: " << topLevel; } |
声明 SLOT:
1 2 | public slots: void toolBarFloat( bool topLevel); |
都是按 SIGNAL 的原型:
1 | void QToolBar::topLevelChanged( bool topLevel) [ signal ] |
运行后发现没有实现想要的目的,即没有执行 MainWindow::toolBarFloat 函数。
查来查去也没有发现什么问题,最后重写了 connect 语句,使用了 QT IDE 的提示。完成的语句如下:
1 | connect(toolBar,SIGNAL(topLevelChanged( bool )), this ,SLOT(toolBarFloat( bool ))); |
拖动工具栏浮动/停靠窗体时,在“应用程序输出”窗体中终于看到如下的内容:
toolBar floating: true toolBar floating: false
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 开发的设计和重构,为开发效率服务
· 从零开始开发一个 MCP Server!
· .NET 原生驾驭 AI 新基建实战系列(一):向量数据库的应用与畅想
· Ai满嘴顺口溜,想考研?浪费我几个小时
· ThreeJs-16智慧城市项目(重磅以及未来发展ai)