在QT对话框上布置图像
Lay out an image on a Qt dialog
如何将图像添加到qt中的对话框?
中我知道过去经常被问到,大多数答案都带有QLabel
及其setPixmap
成员。但是,这通常不是用户(ME)打算:
带有PixMap集的
QLabel
不参与周围的QLayout
。也就是说,当调整对话框大小时,它只是拒绝调整大小,例如QPushButton
会做到。在QHorizontalLayout
中彼此相邻的两个QPushButton
将(类似)将它们之间的可用水平空间均匀分配。在同一布局中,QPushButton
旁边的pixmap的QLabe
只会保持尺寸。默认情况下,裸
QLabel
在调整大小时不会调整其内容的大小。,但是当它做(
QLabel::setResizeContents
)时,它不会保持长宽比。
是否有任何本机在对话框上显示一个PixMap的方法,并合理地参与了布局?
可以通过sizePolicy
属性管理项目大小的项目。摘自QT文档:
sizepolicy:qsizepolicy
此属性保留了小部件的默认布局行为。
如果有一个管理这个小部件的孩子的Qlayout,则大小 使用该布局指定的策略。如果没有这样的qlayout, 使用此功能的结果。
默认策略是首选/首选,这意味着小部件 可以自由调整大小,但更喜欢sizehint()返回。 按钮状的小部件设置了大小策略,以指定他们可以 水平伸展,但垂直固定。同样适用于 lineDit控件(例如qlineedit,qspinbox或可编辑 Qcombobox)和其他水平取向的小部件(例如 qprogressbar)。Qtoolbutton通常是正方形的,因此它们允许增长 在两个方向上。支持不同方向的小部件(例如 QSlider,QSCrollbar或Qheader)指定在各自的 仅方向。可以提供滚动条的小部件(通常 QSCrollarea的子类)倾向于指定它们可以使用 额外的空间,他们可以用小于sizehint()进行制作。
我认为您正在搜索QSizePolicy::Expanding
大小策略:
sizehint()是一个明智的尺寸,但是小部件可以缩小和 仍然有用。小部件可以利用额外的空间,因此应该 获得尽可能多的空间(例如 水平滑块)。
为您的QLabel
设置此问题,并检查如何调整大小。尝试QSizePolicy::Policy
枚举的其他值。
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- 如何使用OpenCV将RBG图像转换为HSV,并将H、S和V值保存为C++中的3个独立图像
- OpenCV EqualizeHist()从彩色图像创建黑白图像
- 将"打开的CV图像"中的"颜色"转换为整数格式
- 平均图像时图像损坏
- 在C++中使用GDAL可以将图像的像素坐标转换为lat,long吗
- 如何将图像传输到c++(dll)中的缓冲区,然后在c#的缓冲区中读/写
- Vulkan验证层不断在VkQueuePresentKHR()上抛出图像布局错误
- 使用FFMPEG将RGB图像序列保存到.mp4时出现问题
- 将RGB图像保存为PPM格式
- 将图像添加到资源文件夹UWP C++
- 彩色图像的卤化物处理平均值
- C++射线示踪剂ppm表示没有足够的数据来显示图像
- 重新定位图像时如何前进到下一个内存块
- 如何使用按钮更新GTK3图像以使用C++从相机捕获图片
- 为什么 BMP 图像上的 imwrite 会卡住/不返回?
- Gstreamer:每 5 秒使用多文件墨水保存图像/jpeg
- 如何使用CImg打开图像?
- 如何使用 OpenCV 解码在两个 UWP 应用之间发送的图像字节?
- 在QT对话框上布置图像