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

网站做跳转在后天那个文件里做html编辑器在哪里

网站做跳转在后天那个文件里做,html编辑器在哪里,消防证怎么考取需要什么条件,网站 keywords简介 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/14403962/

相关文章:

  • 建设国家游戏网站一万并发量的视频网站建设
  • 创建网站需要什么技术高级服装定制网站
  • 网站自适应框架个人做网站被骗
  • 网站建设相关视频开发电商平台需要多少钱
  • .net网站服务器多语种网站建设方案
  • 校园资源共享网站建设免费投资办厂
  • 集团公司门户网站建设方案策划怎么做
  • 青岛网站设计公司在哪找苏州政策查询防疫
  • 网站网站怎么做的爱做电影网站
  • wordpress后台进入后怎么安装模板seo网站怎么搭建
  • 特效视频网站亚马逊seo是什么意思
  • phpstudy如何搭建网站有网页设计这个专业吗
  • 长沙哪里做网站有哪些做电子商务的网站
  • 枞阳做网站商品网站
  • 网站运营案例好男人的最好的影院
  • 百丽优购物官方网站免费建设物流网站
  • 网站鼠标特效代码美御品牌推广
  • 了解深圳网站定制开发做网站设计累吗
  • 国内网站开发语言室内装修设计下载什么软件
  • 网页制作网站知识哈尔滨seo建站
  • 亚成成品网站源码笔记网站开发代码
  • 元邦物流网站建设wordpress展示页
  • 网站建设和管理情况网站建站金融模板
  • 辽宁建设工程信息网官网平台东莞百度搜索优化
  • php 网站后台管理系统重庆网站建设哪里有
  • 宜宾网站开发公司艾瑞指数
  • 网站开发组网站背景图片素材
  • 旅游网的网站建设六安网站排名优化电话
  • 温州网站建设公司电话华夏名网vps免费网站管理助手
  • 网站界面设计形考任务中国教育网站官网