【问题标题】:What is that cursor-like thing at the top of a Qt MainWindow?Qt MainWindow 顶部的类似光标的东西是什么?
【发布时间】:2013-06-29 23:38:50
【问题描述】:

应用程序中圈出的部分叫什么?

我怎样才能摆脱它?

【问题讨论】:

  • 它看起来像一个工具栏,但除非你自己添加它,否则它不会在那里。
  • 当我拖动它时,它会在窗口周围滚动,就像一个滚动条,但我没有添加它,它似乎是默认的。

标签: qt window


【解决方案1】:

它是默认工具栏(如果您的 mainwidget 是 QMainWindow 并且您有 ui 表单,它会自动创建)。要摆脱它,请执行以下操作:

查看类图,在编辑 *.ui 文件时删除 QToolBar,默认命名为 mainToolBar,如此处 -。

或者你可以使用void QMainWindow::removeToolBar ( QToolBar * toolbar ) - docs

或者您可以通过 css 或任何可能的方式隐藏 (mainToolBar->hide())

mainWindow->setStyleSheet( "QMenuBar { border: none } QToolBar { border: none }" );
// or
toolBar->setStyleSheet( "border: none" );
menubar->setStyleSheet( "border: none" );

【讨论】:

  • 在创建 QMainWindow 时,我在设计器中默认没有任何工具栏,如果在 .ui 中有一个,应该可以再次通过设计器 UI 将其删除。跨度>
  • -1 提供了通过 CSS 隐藏工具栏的丑陋方式。这是一个工具栏,而不是工具栏中断。工具栏中断是工具栏项目之间的垂直线。 @Frank Osterfeld,可以通过在 Designer 中调用其上下文菜单并选择删除来删除它。
  • 好吧,我发现工具栏中断我错了。它类似于换行符,它允许在一个工具栏区域的多行上显示工具栏。但这仍然不是 OP 所要求的,removeToolBarBreak 在这里肯定没有帮助。
  • @Riateche 如果您没有注意到,在我的解决方案中,setstylesheet 不是唯一的方法,只是可能的方法之一。包括建议从设计器中手动删除工具栏。您将其作为您的答案,重写并发布并减去了我的答案。好样的。
  • @FrankOsterfeld 自己尝试了 uot,如果您使用 ui 表单创建 qmainwindow 作为主要小部件,则默认情况下包含它。是的,我确实在我的答案中包含了该选项
猜你喜欢
  • 1970-01-01
  • 2017-04-04
  • 2011-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-11
  • 2015-03-12
  • 2011-08-24
相关资源
最近更新 更多