当前位置: 首页 > news >正文

用什么网站做一手楼好如何开网店需要多少资金

用什么网站做一手楼好,如何开网店需要多少资金,百度网站制作公司,cdn wordpress ip统计盒子布局 QBoxLayout可以在水平方向或垂直方向上排列控件#xff0c;分别派生了QHBoxLayout、QVBoxLayout子类。 QHBoxLayout#xff1a;水平布局#xff0c;在水平方向上排列控件#xff0c;即#xff1a;左右排列。QVBoxLayout#xff1a;垂直布局#xff0c;在垂直…盒子布局 QBoxLayout可以在水平方向或垂直方向上排列控件分别派生了QHBoxLayout、QVBoxLayout子类。 QHBoxLayout水平布局在水平方向上排列控件即左右排列。QVBoxLayout垂直布局在垂直方向上排列控件即上下排列。 水平布局、垂直布局除了构造时的方向LeftToRight、TopToBottom不同外其它均相同。 水平布局 auto tiplabel new QLabel(用户名); auto lindEdet new QLineEdit; auto hlayout new QHBoxLayout;hlayout-addWidget(tiplabel); hlayout-addWidget(lindEdet);setLayout(hlayout);垂直布局 auto tiplabel new QLabel(用户名); auto lindEdet new QLineEdit; auto vlayout new QVBoxLayout;vlayout-addWidget(tiplabel); vlayout-addWidget(lindEdet);setLayout(vlayout);嵌套布局 水平布局会把所有的控件都显示在一行上垂直布局会把所有控件显示在一列上,如果要显示多行(比如登录界面)那么就要通过水平布局和垂直布局之间的嵌套实现。 auto tiplabel new QLabel(用户名); auto lindEdet new QLineEdit; auto hlayout new QHBoxLayout hlayout-addWidget(tiplabel); hlayout-addWidget(lindEdet);auto tiplabel1 new QLabel(密码); auto lindEdet1 new QLineEdit; auto hlayout1 new QHBoxLayout; hlayout1-addWidget(tiplabel1); hlayout1-addWidget(lindEdet1)auto vlayout new QVBoxLayout; vlayout-addLayout(hlayout); vlayout-addLayout(hlayout1) setLayout(vlayout);一行就是一个水平布局然后将水平布局嵌入在垂直布局中。 精细化操作 先来一组按钮 QPushButton* btn1 new QPushButton(One); QPushButton* btn2 neQPushButton(Two); QPushButton* btn3 neQPushButton(Three); QPushButton* btn4 neQPushButton(Four); QPushButton* btn5 neQPushButton(Five) QHBoxLayout* hlayout neQHBoxLayout; hlayout-addWidget(btn1); hlayout-addWidget(btn2); hlayout-addWidget(btn3); hlayout-addWidget(btn4); hlayout-addWidget(btn5) this-setLayout(hlayout);这一排按钮和窗口之间有边距按钮和按钮之间也存在间隙这些边距和间隙是可调节的。 调节边距 void QLayout::setContentsMargins(int left, int top, int right, int bottom) hlayout-setContentsMargins(0, 0, 0, 0);调节边界 void setSpacing(int spacing) hlayout-setSpacing(0);拉伸窗口会发现窗口上的按钮会随着窗口的拉伸而变大/变小如果窗口变大很大那么这些按钮是不是就会很难看。 如果在拉伸的过程中按钮的变化是这样的是不是就很好了。要实现这个效果很简单只要添加拉伸空间就可以了。 QHBoxLayout* hlayout new QHBoxLayout; hlayout-addStretch(); //添加拉伸空间 hlayout-addWidget(btn1); ...在第一个控件之前添加伸缩这样所有的控件就会居右显示。 在最后一个控件之后添加伸缩这样所有的控件就会居左显示。 在第一个控件之前最后一个控件之后添加伸缩这样所有的控件就会居中显示。 这个时候拉伸窗口你会发现窗口上的各个按钮的变化是相同的如果你想让某些按钮的变化有些不同可以通过设置拉伸系数来实现。 设置拉伸系数 bool setStretchFactor(QWidget *widget, int stretch) bool setStretchFactor(QLayout *layout, int stretch) hlayout-setStretchFactor(btn2,1); hlayout-setStretchFactor(btn3,2);网格布局 栅格布局将位于其中的窗口部件放入一个网状的栅格之中。QGridLayout将提供给它的空间划分成的行和列并把每个窗口部件插入并管理到正确的单元格。 栅格布局会计算位于其中的空间然后将它们合理的划分成若干个行row和列column并把每个由它管理的窗口部件放置在合适的单元之中。 对于这个页面通过网格布局进行创建可以划分成4行4列。一个控件并不是只能占一个单元格而是可以跨行和跨列的。 void glayout(){QLabel* imageLabel new QLabel;QLineEdit* userNamaeEdit new QLineEdit;QLineEdit* passwdEdit new QLineEdit;QCheckBox* rememberCheckBox new QCheckBox;QCheckBox* autoLoginCheckBox new QCheckBox;QPushButton* registerBtn new QPushButton;QPushButton* forgetBtn new QPushButton;QPushButton* loginBtn new QPushButton;imageLabel-setFixedSize(90,90);imageLabel-setPixmap(QPixm(:/Resource/zay. png));imageLabel-setScaledConten(true)userNamaeEdit-setPlaceholderxt(QQ号码/手机/ 邮箱);passwdEdit-setPlaceholderText(密码);rememberCheckBox-setText(密码); autoLoginCheckBox-setText(动登录);registerBtn-setText(注册);forgetBtn-setText(找回密码);loginBtn-setText(登录)auto glayout new QGridLayo(this);glayout-addWidget(imageLabel0, 0, 3, 1);glayout-addWidg(userNamaeEdit, 0, 1, 1, 2);glayout-addWidget(passwdEdit1, 1, 1, 2);glayout-addWidg(rememberCheckBox, 2, 1, 1, 1);glayout-addWidg(autoLoginCheckBox, 2, 2, 1,1);glayout-addWidget(loginBtn3, 1, 1, 2);glayout-addWidg(registerBtn, 0, 3, 1, 1);glayout-addWidget(forgetBtn1, 3, 1, 1); }表单布局 QFormLayout类管理输入小部件的表单及其关联的标签 以两列形式布置其子项左列由标签组成右列由“字段”小部件行编辑器、旋转框等组成。表达布局的基本单位是行通常使用的是addRow()函数。 void addRow(QWidget* label,QWidget* field)void addRow(QWidget* label,QLayout* field)使用给定的label和field在此表单布局的底部添加新行 void addRow(const QString labelText, QWidget* field)void addRow(const QString labelText, QLayout* field)这个重载会在后台自动创建一个以labelText作为文本的QLabel。 field被设置为新的QLabel的伙伴 void addRow(QWidget widget)void addRow(QLayout layout) 之前用盒子布局中的嵌套结构制作“用户名密码输入界面两行文本编辑框是没有对齐的而如果采用表单布局就不会这样。 使用表单布局实现下面这个界面 void flayout(){auto usernameEdit new QLineEdit;auto passwordLab new QLabel(密 码);auto passwrodEdit neQLineEdit;auto mobileEdit neQLineEdit;auto emailEdit new QLineEditauto manChx new QCheckBox(男);auto womanChx new QCheckBox女);flayout-addRow(*用户名, usernameEdit);flayout-addRow(new QLabel(中文、英文、特殊字 符));flayout-addRow(*密码, passwrodEdit);flayout-addRow(*手机号码, mobileEdit);flayout-addRow(电子邮箱, emailEdit);auto hlayout new QHBoxLayout;hlayout-addWidget(manChx);hlayout-addWidget(womanChx);hlayout-addStretch();flayout-addRow(性别, hlayout); }目前的效果是这样 要想实现显示红色的*以及将字符串 中文、英文、特殊字符变小变灰那么就要使用HTML的标签,对于显示在QLabel上的文字是可以使用一些HTML标签的 void flayout(){auto usernameEdit new QLineEdit;auto passwordLab new QLabel(密 码);auto passwrodEdit neQLineEdit;auto mobileEdit neQLineEdit;auto emailEdit new QLineEditauto manChx new QCheckBox(男);auto womanChx new QCheckBox女);flayout-addRow(font colorred size4*/ font用户名, usernameEdit);flayout-addRow(new QLabel(font colorgray size2中文、英文、特殊字符/ font));flayout-addRow(font colorred size4*/ font密码, passwrodEdit);flayout-addRow(font colorred size4*/ font手机号码, mobileEdit);flayout-addRow(电子邮箱, emailEdit);auto hlayout new QHBoxLayout;hlayout-addWidget(manChx);hlayout-addWidget(womanChx);hlayout-addStretch();flayout-addRow(性别, hlayout); }堆栈布局 QStackedLayout 用于管理多个子窗口或页面的堆叠显示。它允许你在一个固定区域内显示多个子窗口但每次只显示其中一个子窗口其他子窗口被堆叠在后面。 这里通过堆栈布局管理上文中的网格布局和表单布局实现一个页面切换的效果。 static QWidget* CreatePage(int id) {if (id 0){QWidget* page new QWidget;gridlayout(page);return page;}else if (id 1){QWidget* page new QWidget;formlayout(page);return page;}return nullptr; }这里稍微修改了一下girdlayout函数和formlayout函数 girdlayout(QWidget*page) 原来这里填的是this现在改为page就可以了 auto glayout new QGridLayout(page); formlayout(QWidget*page) 原来这里填的是this现在改为page就可以了 auto flayout new QFormLayout(page); void slayout() { auto btnGroup new QButtonGro(this); btnGroup-addButton(new QPushButt(page1), 0); //0 btnGroup-addButton(new QPushButt(page2), 1); //1auto hlayout new QHBoxLayout; hlayout-addWidget(btnGroup-butt(0)); hlayout-addWidget(btnGroup-butt(1)); hlayout-addStretch();//用来管理多个页面的 auto slayout new QStackedLayout; slayout-addWidget(CreatePa(0)); //0 slayout-addWidget(CreatePa(1)); //1auto vlayout new QVBoxLayout; vlayout-addLayout(hlayout); vlayout-addLayout(slayout);setLayout(vlayout);//切换页面 qDebug() slayout-count();connect(btnGroup,QButtonGroup::idClicked, [](int id){slayout-setCurrentIndex(id);});}
http://www.hkea.cn/news/14438010/

相关文章:

  • 字画价格网站建设方案网站制作公司多少费用
  • 国外网站加速手机网站打开手机app
  • 建设工程消防监督管理规定网站常州网站制作培训
  • 太平洋建设 网站代刷网站开发
  • 学校网站开发协议企业邮箱怎么获取
  • 京东购物网站怎么做centos安装 wordpress环境搭建
  • 淮安做网站杨凯新手学做网站图
  • 长沙网站优化收费wordpress浏览pdf
  • ppt设计培训班绍兴seo整站优化
  • 住房和城乡建设部网站诚信评价即刻搜索
  • 婺源做微信网站免费网站推广工具有哪些
  • 漯河市住房和乡镇建设局官方网站cms企业网站源码
  • 手机网站建设文章天津设计公司联系方式
  • flash同视频做网站开发一个app多少钱
  • 不用网站做cpa谷歌云 阿里云 做网站
  • 做的网站怎么转成网址链接中学生网站设计下载
  • 电子商务网站建设的技术综述论文wordpress登陆页面模板
  • 备案时注意网站名称规范网页设计素材的制作与收集
  • 广州网站建设好评公司企业网站建设毕业设计论文
  • 株洲建设局网站网站基本流程
  • 手机网站关键词优化软件网站推广软件污
  • 公司快速建站提升网站流量的方法
  • 万能站工具的企业网站系统爱看视频的网站
  • 南京外贸网站建站wordpress前台投稿插件
  • wap网站管理系统内链wordpress
  • 重庆建网站诚选快忻科技悉心软件工程专业就业前景
  • 对二次网站开发的认识怎样才能做好网络推广
  • 做哪类网站没有版权问题百度网盟推广案例
  • 网页设计与网站制作华为手机网站建设策划方案
  • 学做网站设计需要多少钱银川建设网站公司