QT -- 快速设计对话框1

gotocelldialog.h
===================================================
/*
创建一个新类,让该类同时从QDialog和Ui::GoToCellDialog中继承出来,并且由它来实现那些缺失的功能。
将该类与uic所生成的类具有相同的名字,只是没有ui::前缀而已。
uic -- 用户界面编译器,将gotocelldialog.ui文件转换为c++并且将转换结果存储在ui_gotocelldialog.h文件中。
*/

#ifndef GOTOCELLDIALOG_H
#define GOTOCELLDIALOG_H

#include <QDialog>

#include "ui_gotocelldialog.h"

class GoToCellDialog : public QDialog, public Ui::GoToCellDialog
{
    Q_OBJECT

public:
    GoToCellDialog(QWidget *parent = 0);

private slots:
    void on_lineEdit_textChanged();
};

#endif
==============================================
gotocelldialog.cpp
==============================================
//使用了public继承,因为我们想在该对话框的外边访问该对话框的窗口部件。包含在gotocelldialog.cpp文件中的实现代码
#include <QtGui>

#include "gotocelldialog.h"

GoToCellDialog::GoToCellDialog(QWidget *parent)
    : QDialog(parent)
{
    setupUi(this);//用来初始化窗体

    QRegExp regExp("[A-Za-z][1-9][0-9]{0,2}");
    lineEdit->setValidator(new QRegExpValidator(regExp, this));//QRegExpValidator --检验器类,允许一个大写或者小写字母

    connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));//槽与相应的信号相连接,结果变量的值为1
    connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
}

void GoToCellDialog::on_lineEdit_textChanged()//启用或者禁用ok
{
    okButton->setEnabled(lineEdit->hasAcceptableInput());//判断行编辑器中内容的有效性
}

======================================================================
main.cpp
=======================================================================
#include <QApplication>
#include <QDialog>
#include "gotodialog.h"
#include "ui_gotocelldialog.h"

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

  GoToCellDialog *dialog = new GoToCellDialog;
  dialog->show();
  return app.exec();
}
==========================================================================



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值