问题标签 [qscrollarea]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 无法让 QLabel 图像滚动
我正在努力让QLabel
我设置的这个图像运行良好。我只需要让它滚动。我了解QScrollArea
设置,但这不是QScrollArea
.
我需要在mainwindow.cpp
我的QLabel
. 这是我设置我的区域QLabel
以及我希望将其设置为能够滚动的区域。
QScrollArea
如果没有它完全控制整个程序并显示所有图像,我不知道如何开始工作。
我只需要图像可滚动,请给我示例代码,它使一切更容易掌握。预先感谢您的协助。
PS我不希望滚动超过主小部件,只是其中QLabel
包含图像的小部件。
c++ - Qt QGridLayout 自动将项目居中(移动)到中间。
我的表单上有一个QHBoxLayout
添加了 3 个布局的表单。第二个有关于我的问题的项目。
我QVBoxLayout
在主布局的第二个窗格(QHBoxLayout
)上有一个。这QVBoxLayout
有一个QScrollArea
添加到它addWidget
。
这QScrollArea
是一个QWidget
名为“scrollContents”的父级,后者又包含一个QGridLayout
.
我正在向其中添加一个自定义创建的小部件,QGridLayout
它具有固定的高度。我们100px
现在可以考虑一下。
如果这QGridLayout
有项目,其总高度小于表单本身,它将这些小部件垂直居中,它们之间的空间相同。
如果只有一个小部件,它会出现在中间。但我希望它们从上到下列出。
例如:[### 表示QScrollArea
其中有 aQWidget
的区域 QGridLayout
。
基本上:如果有 9 个“行”的空间,当添加一个项目时,它会出现在中间的第 5 个位置。如果有 9 个或更多,它们将按应有的方式显示。如果有 8 个或更少,则它们之间的空间将扩大到全部居中。
我该如何解决这个问题?
谢谢你。
c++ - 使用 Qt,我应该使用 setStyleSheet 还是 QPalette(Background, image) 来设置背景图像?
我对使用 Qt 进行开发相当陌生。过去一周我读了很多书,听说有时使用样式表设置背景图像会导致“减速”问题。
作为我的天才(讽刺),我想出了如何使用 QPalette.setBrush() 方法设置背景。
我的问题是:
- 在为 QWidget、QScrollArea 等设置背景图像时,我应该使用哪种方法来获得最佳性能(如果重要的话,低内存占用)。
如果有帮助,我正在使用的图像会重复出现。
qt - 如何使小部件溢出以使滚动条出现在 Qt 中?
我的小部件的结构是:
QWidget 自定义为带有圆形边框的面板。
要在边界内包含一个带有滚动条的区域并带有边距,然后我把它放在里面:
带有 QVBoxLayout 的 QScrollArea(垂直添加内容)
然后我在其中添加了一系列:
标题间距为 0 的 QGroupBox 和 QFormLayout
表单布局不像我想象的那样工作。里面的小部件是标签+旋转框,所有这些。
这是一张图片:
第一的。他们没有居中。我不知道为什么。
第二。正如我告诉他们的,它们都被赋予了相同的固定尺寸,但无论如何它们都是堆积的,而不是压扁的,所以它们相互隐藏。为什么它不保持那个大小并且父 QScrollArea 显示外面的滚动条?这就是我想要的。
我不希望内容被压扁或拉伸。我希望他们处于领先地位。如果屏幕很大,面板会很长,但内容会在最上面,总是一样的大小。
有人要了代码,所以我把它复制在这里,但是代码真的很大......我认为它更令人困惑。但是好吧,我会删除没有意义的线条。这是您在该框中看到的部分:
现在是所有样式表:
qt - Qt ensureVisible() 在 QScrollArea 中不起作用
我有 2 列。其中一列充满了许多 QWidget。当我在列中放置一个小部件时,我调用此方法:
当我在第一列的底部并在下一个中拖动一个小部件时。滚动区域正确滚动到底部,以便我可以看到我将其放置在哪里。
但是当我将小部件放回第一列时,它会滚动但不会完全滚动到底部。它的大约 150 像素(编辑:150 像素不是真的。我只看到大约 5 像素的小部件)
有谁能够帮我?
编辑:
也许很高兴知道我的布局。
我有一个带有QScrollArea
. scrollArea 有一个QWidget
被调用的scrollAreaWidgetContents
,它有一个 QHBoxLayout。该小部件有 5 列。这些具有用于我的拖放小部件的 QVBoxLayout。
天哪,另一个编辑:
我注意到只有最后一项出错了。
我只是继续编辑
我现在很清楚滚动条并没有一直向下。
此代码也显示相同的行为。我应该怎么处理这个线程?我应该创建一个新的吗?
c++ - QScrollArea 小部件未使用 Flowlayout 扩展
我有一个带有QScrollArea
小部件的用户界面。QScrollArea
使用Flowlayout。_ 我的问题是,当我在布局中添加小部件时,滚动区域开始滚动,并且在有扩展空间时不会扩展。我希望滚动区域在滚动条首先出现之前扩展到其极限。
如何在滚动条出现之前让滚动区域扩大?
qt - 如何在 QT 中隐藏 qscrollbar 上下文菜单
如何隐藏右键单击时出现的滚动条上下文菜单?
resize - 使 QTreeView 自动调整为内容
我正在尝试QTreeView
对其内容进行自动调整大小。这是我的设置:我正在尝试创建一个QWidget
带有Qt.Tool | Qt.FramelessWindowHint
as its的“智能”工具提示WindowFlags
,效果很好。它包含一个带有一些按钮的布局(其大小是恒定的)和QTreeView
. 现在,每当向QTreeView
's 模型添加行时,QTreeView
应该会自动增加其大小以避免垂直滚动条。
QSizePolicy.Expanding
在工具提示小部件上设置QTreeView
并没有改变任何东西 - 也许我在这里遗漏了一些额外的标志或其他东西。
我还尝试了以下蛮力方法:
这在大多数情况下都有效,但并非总是如此。每隔一段时间(准确地说是每隔一次,但我不知道这是否是巧合),使用此代码,视图会正确调整大小(即所有内容都适合,并且不需要滚动条),但滚动条不会消失,允许滚动到最后一行下方的空白处。
scrollbar - 使用垂直分隔符在窗口中集中 QTableView
我正在尝试创建一个包含 QTableView 的主窗口(固定大小),上面和下面都有 QSpacerItems,以便(垂直)集中表格。
(抱歉,显然无法发布图片)。
我有一个 QVBoxLayout,其中有一个垂直垫片、QTableView 和另一个垂直垫片。我已经为所有三个小部件使用了 QSizePolicy 的所有组合,但我无法在没有滚动条的情况下显示表格。(我不能使用 Qt.ScrollBarAlwaysOff ,因为如果项目数超过主窗口的大小,则需要它们)。因此,QTableView 上的垂直滚动条会显示出来,即使垂直间隔在视图和主窗口之间吸收了大量空间。
我希望垂直垫片占据表格小部件上方和下方所需的最小空间,以便集中行,并且表格小部件可以显示尽可能多的行,而无需滚动条。
c++ - QScrollBar + QScrollAera in QTabWidget
My question is simple : how can I set a QScrollBar in my QScrollArea. I have tested a lot of things but nothing work ... Maybe it's a problem to set a QScrollArea in a QTabWidget ? Here is the code :
In fact, I add pictures in a tab where is created a QScrollArea (like 8-9 lines of pictures) but only 5 are visible, the others are hide, because they are at the bottom, out of the defined zone.
Any idea ? Thank's.