在 QTabWidget 上放置一个关闭按钮
我正在使用 QTabWidget 在窗口中呈现多个文档,并且我想在每个选项卡上绘制一个关闭按钮。 我使用的是 Vista 和 Qt4,因此选项卡小部件是本机 Windows 控件; 这可能会影响可行性。
有谁知道是否可以使用 QTabWidget 控件来做到这一点,或者我是否必须创建一个自定义小部件? 如果创建一个新的小部件是唯一的选择,任何指针将不胜感激; 我对 Qt 还比较陌生。
I'm using a QTabWidget
to render multiple documents in a window, and I want to draw a close button on each tab. I'm using Vista and Qt4, so the tab widget is a native windows control; this may affect the feasibility.
Does anyone know if it is possible to do this using the QTabWidget
control, or do I have to create a custom widget? If creating a new widget is the only option, any pointers would be much appreciated; I'm relatively new to Qt.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
自 Qt 4.5 起。 如果您只是在
QTabWidget
上调用setTabsClosable(true)
,您将拥有关闭按钮,但它们不会绑定到操作。如果您希望按钮执行某些操作,则必须将 tabCloseRequested(int) 信号连接到您自己的插槽之一。
Since Qt 4.5. If you just call
setTabsClosable(true)
onQTabWidget
, you will have the close buttons but they won't be bound to an action.You have to connect the tabCloseRequested(int) signal to one of your own slots if you want the buttons to do something.
4.5中有函数
In 4.5 there is function
目前,库存 QTabWidget 无法做到这一点,但是即将推出的 Qt 4.5(计划于 2009 年 3 月发布)将具有 能够手动或通过设置
QTabBar.TabsClosable
属性向选项卡添加关闭按钮。在此之前,获取关闭按钮的唯一方法是子类化
QTabWidget
或QTabBar
并手动添加(可能,但并非微不足道)。Currently there is no way to do this with the stock QTabWidget, however the upcoming Qt 4.5 (planned to be released in March 2009) will have the ability to add close buttons to tabs either manually or by setting a
QTabBar.TabsClosable
property.Until then, the only way to get close buttons is to subclass
QTabWidget
orQTabBar
and add it manually (possible, but not trivial).