当前位置:七道奇文章资讯编程技术VC/C++编程
日期:2011-03-22 13:54:00  来源:本站整理

<b>Qt学习之路(5):组件筹划</b>[VC/C++编程]

赞助商链接



  本文“<b>Qt学习之路(5):组件筹划</b>[VC/C++编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

顾名思义,绝对定位就是利用最原始的定位办法,给出这个组件的坐标和长宽值.这样,Qt就知道该把组件放在那边,以及怎么设置组件的大小了.但是这样做的一个问题是,假如用户改变了窗口大小,比方点击了最大化大概拖动窗口边沿,这时,你就要自己编写呼应的函数来呼应这些改变,以避免那些组件还只是暗暗地呆在一个角落.大概,更简单的办法是直接禁止用户改变大小.

不过,Qt供应了别的的一种机制,就是筹划,来办理这个问题.你只要把组件放入某一种筹划之中,当需求调整大小大概位置的时刻,Qt就知道该怎样举行调整.这近似于Swing的筹划管理器,不过Qt的筹划没有那么多,只有有限的几个.

来看一下下面的例子:

#include <QtGui/QApplication>
#include <QtGui/QWidget>
#include <QtGui/QSpinBox>
#include <QtGui/QSlider>
#include <QtGui/QHBoxLayout>

int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget *window = new QWidget;
window->setWindowTitle("Enter your age");

QSpinBox *spinBox = new QSpinBox;
QSlider *slider = new QSlider(Qt::Horizontal);
spinBox->setRange(0, 130);
slider->setRange(0, 130);

QObject::connect(slider, SIGNAL(valueChanged(int)), spinBox, SLOT(setValue(int)));
QObject::connect(spinBox, SIGNAL(valueChanged(int)), slider, SLOT(setValue(int)));
spinBox->setValue(35);

QHBoxLayout *layout = new QHBoxLayout;
layout->addWidget(spinBox);
layout->addWidget(slider);
window->setLayout(layout);

window->show();

return app.exec();
}

这里利用了两个新的组件:QSpinBox和QSlider,以及一个新的顶级窗口QWidget.QSpinBox是一个有上下箭头的微调器,QSlider是一个滑动杆,只要运行一下就会懂得毕竟是什么东西了.

代码并非那么难懂,还是来简单的看一下.首先成立了一个QWidget的实例,调用setWindowTitle函数来设置窗口标题.然后成立了一个QSpinBox和QSlider,辨别设置了它们值的范围,利用的是setRange函数.然后举行信号槽的链接.这点背面再具体阐明.然后是一个QHBoxLayout,就是一个水平筹划,按照从左到右的次序举行增添,利用addWidget增添好组件后,调用QWidget的 setLayout把QWidget的layout设置为我们定义的这个Layout,这样,程序就完成了!

编译运行一下,可以看到效果:

假如最大化的话:


  以上是“<b>Qt学习之路(5):组件筹划</b>[VC/C++编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .