QT中属性编辑器--各个属性的含义

在QSplitter中,geometry表示控件的位置和大小。

该属性的类型是QRect,包含了控件的左上角坐标和宽高信息。您可以使用geometry()函数来获取控件的当前位置和大小,并使用setGeometry()函数将其设置为新的位置和大小。

// 创建QSplitter控件
QSplitter *splitter = new QSplitter(Qt::Horizontal, this);

// 添加子控件
QWidget *widget1 = new QWidget(splitter);
QWidget *widget2 = new QWidget(splitter);
splitter->addWidget(widget1);
splitter->addWidget(widget2);

// 获取splitter控件的当前位置和大小
QRect splitterGeometry = splitter->geometry();
qDebug() << "splitter current geometry: " << splitterGeometry;

// 将splitter控件的位置和大小设置为新值
splitter->setGeometry(100, 100, 400, 200);

 


在QWidget类中,sizePolicy是一个QSizePolicy类型的属性,表示该部件的大小策略。

具体来说,sizePolicy属性包含了三个元素:horizontalPolicy、verticalPolicy和controlType。其中,horizontalPolicy和verticalPolicy是QSizePolicy中的两个枚举类型,分别表示部件在水平方向和垂直方向上的大小策略;controlType是一个枚举类型,表示控制部件大小的方式。

 

horizontal:

        "hori-"这个前缀源于拉丁语 "horizōn",意为“水平线”,因为在人类的视野范围内,地球表面和天空的相交处形成了一条明显的水平线。因此,在英语和许多其他语言中,“hori-”通常用于表示水平方向或位置。

        "zon" 不是一个独立的词根,但是它可以出现在一些词中,如zone(区域),azonic(无土壤的)。通常来说,这些词都来源于希腊语的词根 "zōnē",表示“带、带状区域”。

vertical:

        "vertical"的词根来自于拉丁语 "vertex",意为“转折点、顶点”,在解析几何中指线段两个端点之间垂直于平面的直线。"Vertex" 的原始含义为“旋转、颠簸”, 借用到现代英语中,其衍生出了不同的涵义,如指高空中形成的中心风眼或山峰的尖顶等。在现代英语中,“vertical”通常用来形容垂直于地面或垂直于水平面的方向、位置、线条或形状。

        "-tical"是一个常用的表示形容词的后缀,在许多英语单词中都有出现。它通常起到派生、变形或强化词语含义的作用。例如:“analytical”(分析的)、“critical”(批判的)、“theoretical”(理论的)等词都是由添加了“-tical”后缀而来。

可以使用以下代码获取和设置QWidget对象的sizePolicy属性:

QWidget *widget = new QWidget(parent);
QSizePolicy sizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
widget->setSizePolicy(sizePolicy);  // 设置部件的大小策略

在上述代码中,我们首先创建了一个QWidget对象,并将其存储在指针变量widget中。然后,通过创建一个QSizePolicy对象,指定部件的水平方向的大小策略为Expanding,垂直方向的大小策略为Preferred,并将结果存储在QSizePolicy类型的变量sizePolicy中。最后,使用QWidget的setSizePolicy()函数,设置QWidget对象的大小策略为sizePolicy。

需要注意的是,QWidget的sizePolicy属性只对使用布局管理器进行布局的窗口部件有效。如果在不使用布局管理器的情况下设置了QWidget的sizePolicy属性,那么这些属性将不会生效,因此应该避免在不使用布局管理器的情况下设置QWidget的sizePolicy属性。

其中,垂直方向或者水平方向的大小策略可以是Fixed、Minimum、Maximum、Preferred、Expanding或Ignored之一。

具体使用方法如下:

  • Fixed:固定大小策略

该大小策略表示控件希望在布局中保持固定的大小不变。可以通过以下代码将控件的水平和垂直大小策略设置为Fixed:

  • Minimum:最小大小策略

该大小策略表示控件希望在布局中至少有一个最小尺寸。

  • Maximum:最大大小策略

该大小策略表示控件希望在布局中至多有一个最大尺寸。

  • Preferred:首选大小策略

该大小策略表示控件希望在布局中达到其首选尺寸。

  • Expanding:伸缩大小策略

该大小策略表示控件希望在布局中可以自由伸缩。

  • Ignored:忽略大小策略

该大小策略表示控件希望在布局中大小被忽略。

  • 7
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值