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

网站做跳转在后天那个文件里做有自己域名的个人网站

网站做跳转在后天那个文件里做,有自己域名的个人网站,wordpress cname,seo网站推广多少钱简介 Qt 中的布局有三种方式#xff0c;水平布局#xff0c;垂直布局#xff0c;栅格布局。 通过ui设置布局 我们先创建一个窗口应用程序#xff0c;程序名叫layout#xff0c;基类选择QMainWindow。但我们不使用这个mainwindow#xff0c;我们创建一个Qt应用程序类Log…简介 Qt 中的布局有三种方式水平布局垂直布局栅格布局。 通过ui设置布局 我们先创建一个窗口应用程序程序名叫layout基类选择QMainWindow。但我们不使用这个mainwindow我们创建一个Qt应用程序类LoginQt会为我们自动生成login.ui文件。我们进入ui文件编辑添加一个label提示改为用户: 在后边添加一个lineedit控件按住ctrl鼠标依次点击这两个控件选中后再点击工具栏的水平布局按钮就可以看到用户label和输入框处于同一水平线了。但是输入框会被拉长而且label和输入框占满了整个水平空间。这时我们可以通过拖动左侧控件列表中的Horizonal Spacer将其放入用户标签的左侧再拖动一个Horizonal Spacer将其放在输入框的右侧就可以看到用户标签和输入框被挤在中间了并且两侧留有空间了。Spacer可以设置几种模式包括fixedexpanding, maximum, minimum等模式。 依次类推我们在添加密码标签和输入框以及登录和注册按钮通过ui界面的控件调整布局。 通过代码设置布局 上面我们通过ui设置了布局接下来我们通过代码设置布局设置注册界面的布局 注册类的声明如下 #ifndef REGISTER_H #define REGISTER_H#include QDialog #include memory using namespace std; class Login; namespace Ui { class Register; }class Register : public QDialog {Q_OBJECTpublic:explicit Register(QWidget *parent nullptr);~Register();void set_login(const weak_ptrLogin _login); private:Ui::Register *ui;weak_ptrLogin _login;QPushButton* _reg_btn; public slots:void ShowLogin(); };#endif // REGISTER_H因为要实现登录和注册界面之间的切换所以Register类包含了Login类的弱指针Register类的具体实现如下 #include register.h #include ui_register.h #include QHBoxLayout #include QVBoxLayout #include QLabel #include QLineEdit #include QPushButton #include QSpacerItemRegister::Register(QWidget *parent) :QDialog(parent),ui(new Ui::Register) {ui-setupUi(this);this-setMaximumSize(QSize(300,350));this-setMinimumSize(QSize(300,350));auto vbox_layout new QVBoxLayout();auto verticalSpacer1 new QSpacerItem(40,20, QSizePolicy::Minimum, QSizePolicy::Expanding);vbox_layout-addItem(verticalSpacer1);QSpacerItem *name_item1 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Minimum);QLabel * name_label new QLabel();name_label-setText(邮箱:);QLineEdit * name_edit new QLineEdit();auto name_layout new QHBoxLayout();name_layout-addItem(name_item1);name_layout-addWidget(name_label);name_layout-addWidget(name_edit);QSpacerItem *name_item2 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Minimum);name_layout-addItem(name_item2);vbox_layout-addLayout(name_layout);QLabel * pwd_label new QLabel();pwd_label-setText(密码:);QLineEdit * pwd_edit new QLineEdit();auto verticalSpacer2 new QSpacerItem(40,20, QSizePolicy::Maximum, QSizePolicy::Maximum);vbox_layout-addItem(verticalSpacer2);auto pwd_layout new QHBoxLayout();QSpacerItem *pwd_item2 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Minimum);QSpacerItem *pwd_item1 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Minimum);pwd_layout-addItem(pwd_item1);pwd_layout-addWidget(pwd_label);pwd_layout-addWidget(pwd_edit);pwd_layout-addItem(pwd_item2);vbox_layout-addLayout(pwd_layout);auto verticalSpacer3 new QSpacerItem(40,30, QSizePolicy::Fixed, QSizePolicy::Maximum);vbox_layout-addItem(verticalSpacer3);QSpacerItem* reg_btn_item1 new QSpacerItem(150,20, QSizePolicy::Fixed, QSizePolicy::Minimum);_reg_btn new QPushButton();_reg_btn-setText(注册);auto regbtn_layout new QHBoxLayout();regbtn_layout-addItem(reg_btn_item1);regbtn_layout-addWidget(_reg_btn,5);QSpacerItem* reg_btn_item2 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Minimum);regbtn_layout-addItem(reg_btn_item2);vbox_layout-addLayout(regbtn_layout);auto verticalSpacer4 new QSpacerItem(40,20, QSizePolicy::Fixed, QSizePolicy::Expanding);vbox_layout-addItem(verticalSpacer4);this-setLayout(vbox_layout); }Register::~Register() {delete ui; }void Register::set_login(const weak_ptrLogin login){_login login; }void Register::ShowLogin() {} Register的构造函数中用代码的方式创建了一个垂直布局垂直布局中增加了两个spacer分别是verticalSpacer1和verticalSpacer4以及三个水平布局pwd_layoutname_layout以及regbtn_layout然后分别用代码的方式在三个布局中添加spacer和控件。 Login类的声明如下 #ifndef LOGIN_H #define LOGIN_H#include QDialog #include memory class Register; using namespace std; namespace Ui { class Login; }class Login : public QDialog, public std::enable_shared_from_thisLogin {Q_OBJECTpublic:explicit Login(QWidget *parent nullptr);~Login();void initSignals();private slots:void on_regBtn_clicked();private:Ui::Login *ui;std::shared_ptrRegister _register; };#endif // LOGIN_HLogin实现如下下 #include ui_login.h #include QBitmap #include QPainter #include register.hLogin::Login(QWidget *parent) :QDialog(parent),ui(new Ui::Login) {ui-setupUi(this); }void Login::initSignals(){_register make_sharedRegister();//从本类转化为共享的智能指针给register类_register-set_login(shared_from_this()); }Login::~Login() {delete ui; }void Login::on_regBtn_clicked() {this-close();_register-show(); }main函数的实现如下 #include login.h #include QApplication #include memory using namespace std; int main(int argc, char *argv[]) {QApplication a(argc, argv);std::shared_ptrLogin w make_sharedLogin();w-initSignals();w-show();return a.exec(); }点击运行按钮程序运行起来就可以从登录界面切换到注册界面了 总结 源码链接https://gitee.com/secondtonone1/qt-learning-notes
http://www.hkea.cn/news/14370488/

相关文章:

  • 网站开发进度时间表最受欢迎的网站开发语言市场有率
  • 重庆网站建设入门培训如何做公司的网站建设
  • 青岛响应式网站设计wordpress淘宝客主题带条件筛选
  • 企业怎么建设网站网络营销模式的有形收益包括
  • .net网站服务器hao123从网上开始
  • wordpress最大的网站打开网页时网站顶部显示广告随后消失的广告怎么做
  • 做网站和SSH仿 手机 网站模板html源码
  • 云南微网站建设律师网站素材
  • 网站特效js代码个人如何推广app
  • 制作网页的模板的网站百度推广获客方法
  • 国内课程网站建设现状甘肃省住房和城乡建设厅网站职称证查询
  • 如何在网站页面做标注有了域名自己电脑怎么做网站
  • 网站开发工具 晴天娃娃中国商标查询网官网
  • asp网站转php网站建设费用清单
  • 青岛专业网站制作外贸网站如何做推广
  • 网站设计样例响应式 网站 设计软件
  • 浙江网站备案流程海南省建设注册中心网站
  • 江苏网站建设电话中国核工业二三建设有限公司是国企吗
  • 北京专业企业营销网站建设为企业做网站策划案
  • wordpress改字号百度竞价优化
  • 企业网站轮播图邢台市行政区划图
  • 影响网站排名重要因素武功做网站
  • 徐州网站建设公司株洲在线论坛二手市场
  • 单位建设网站注意点长城集团建设有限公司网站
  • 网站制作_做网站_耐思智慧网站备案注销原因
  • 品牌网站如何做seoshopxo开源商城
  • 金华网站建设工程网站建设云定制网站
  • 如何在ftp给网站做百度自动推送网站验证码文件
  • 好网站建设公司选择哪家好做黑彩网站
  • 网站短信接口怎么做企业网站建设与网络营销的关系