欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

VS2012下QT creator登錄對(duì)話框設(shè)計(jì)

 更新時(shí)間:2018年06月05日 14:11:49   作者:CaddressL  
這篇文章主要為大家詳細(xì)介紹了VS2012下QT creator登錄對(duì)話框的設(shè)計(jì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近看《Qt教程及軟件》學(xué)習(xí)QT,這本書(shū)的編程是在Qt creator上進(jìn)行的,本人更傾向于在VS2012上進(jìn)行開(kāi)發(fā),故根據(jù)自己實(shí)驗(yàn)中的經(jīng)驗(yàn),筆記一下在VS2012進(jìn)行Qt編程的一些問(wèn)題及解決方法,本人用的是Qt5.3版本。

首先,新建一個(gè)工程

選擇Qt Application,填寫(xiě)工程名

一直Next,Base class選擇QWidget,點(diǎn)擊Finish創(chuàng)建

此時(shí)項(xiàng)目未添加對(duì)應(yīng)的include文件,有許多地方顯示“can not open source file……”。選擇菜單欄PROJECT->User Properties… 進(jìn)入添加頭文件設(shè)置頁(yè)面

點(diǎn)擊“Additional Include Directories”進(jìn)行編輯,添加你QT安裝目錄下的以下文件夾

新建一個(gè)對(duì)話類,右鍵項(xiàng)目名,添加新類

選擇Qt5 Classes,雙擊 Qt5GuiClasses

Base Class填QDialog,點(diǎn)擊Finish完成創(chuàng)建

然后就進(jìn)行ui布置了,在logindlg.ui中設(shè)計(jì)下面的界面:行輸入框?yàn)長(zhǎng)ine Edit。其中用戶名后面的輸入框在屬性中設(shè)置其object Name為usrLineEdit,密碼后面的輸入框?yàn)閜wdLineEdit,登錄按鈕為loginBtn,退出按鈕為exitBtn。設(shè)置完如下圖:

點(diǎn)擊選擇”編輯信號(hào)/槽“,按住退出按鈕拖一下,彈出對(duì)話框,信號(hào)選擇clicked(),槽選擇close(),實(shí)現(xiàn)點(diǎn)擊退出功能。若沒(méi)有close(),選擇“顯示從QWidget繼承的信號(hào)和槽”。

按照上面方法設(shè)置登錄按鈕的信號(hào)與槽,其槽函數(shù)要自己寫(xiě),所以槽選擇那里點(diǎn)擊編輯,新增一個(gè)slot1(),改名為on_loginBtn_clicked()。點(diǎn)擊確定。保存Qt 設(shè)計(jì)師并關(guān)閉。

回到VS2012,修改main.cpp:

#include "user.h"
#include <QtWidgets/QApplication>
#include "logindlg.h"

int main(int argc, char *argv[])
{
  QApplication a(argc, argv);
  User w;
  loginDlg login;
  if(login.exec() == QDialog::Accepted)
  {
  w.show();
  return a.exec();
  }
  else return 0;
}

接著修改loginDlg.cpp,先在loginDLg.h中添加之前的槽函數(shù)的聲明。

#ifndef LOGINDLG_H
#define LOGINDLG_H

#include <QDialog>
#include "ui_logindlg.h"

class loginDlg : public QDialog
{
  Q_OBJECT

public:
  loginDlg(QWidget *parent = 0);
  ~loginDlg();

private:
  Ui::loginDlg *ui; //這里定義ui為指向類的指針
private slots:
  void on_loginBtn_clicked(); //槽函數(shù)聲明
};

#endif // LOGINDLG_H

最后在loginDlg.cpp中定義槽函數(shù),實(shí)現(xiàn)正確輸入帳號(hào)密碼則進(jìn)入主窗口,否則報(bào)錯(cuò)。

void loginDlg::on_loginBtn_clicked()
{
  if(ui->usrLineEdit->text() == tr("caddress")&&ui->pwdLineEdit->text()==tr("123456"))
    accept();
  else{
    QMessageBox::warning(this,tr("Warning"),tr("user name or password error!"),QMessageBox::Yes):
  }
}

至此,程序還有許多錯(cuò)誤,有大部分頭文件未找到,按照上面的方法繼續(xù)添加相應(yīng)文件夾:

 

添加完后點(diǎn)擊編譯,則相應(yīng)的頭文件就找到了。

loginDlg.cpp完整代碼:

#include "logindlg.h"
#include <qmessagebox> //添加該頭文件才能使用QMessageBox

loginDlg::loginDlg(QWidget *parent)
 : QDialog(parent)
{
 (*ui).setupUi(this); //這里ui需要為類類型,所以得解指針
}

loginDlg::~loginDlg()
{

}

void loginDlg::on_loginBtn_clicked()
{
 if(ui->usrLineEdit->text() == tr("caddress")&&ui->pwdLineEdit->text()==tr("123456")) //這里需要指針,直接使用ui
  accept();
 else{
  QMessageBox::warning(this,tr("Warning"),tr("user name or password error!"),QMessageBox::Yes);
 }
}

點(diǎn)擊編譯就能實(shí)現(xiàn)功能

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • ASP.NET MVC4 HtmlHelper擴(kuò)展類,實(shí)現(xiàn)分頁(yè)功能

    ASP.NET MVC4 HtmlHelper擴(kuò)展類,實(shí)現(xiàn)分頁(yè)功能

    本文主要做了一個(gè)HtmHelper類的分頁(yè)擴(kuò)展函數(shù),方便在視圖中調(diào)用,有需要的朋友可以參考一下,希望對(duì)大家有所幫助。
    2016-03-03
  • .NET Core中本地化機(jī)制的深入講解

    .NET Core中本地化機(jī)制的深入講解

    這篇文章主要給大家介紹了關(guān)于.NET Core中本地化機(jī)制的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-10-10
  • .NET Core 2.0遷移小技巧之MemoryCache問(wèn)題修復(fù)解決的方法

    .NET Core 2.0遷移小技巧之MemoryCache問(wèn)題修復(fù)解決的方法

    這篇文章主要給大家介紹了關(guān)于.NET Core 2.0遷移小技巧之MemoryCache問(wèn)題修復(fù)解決的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-08-08
  • Sqlite 常用函數(shù)封裝提高Codeeer的效率

    Sqlite 常用函數(shù)封裝提高Codeeer的效率

    以下是頻繁用到的Sqlite函數(shù),內(nèi)容格式相對(duì)固定,封裝一下有助于提高開(kāi)發(fā)效率^_^至少提高Codeeer的效率了
    2012-12-12
  • ASP.NET將文件寫(xiě)到另一服務(wù)器(圖文教程)及注意事項(xiàng)

    ASP.NET將文件寫(xiě)到另一服務(wù)器(圖文教程)及注意事項(xiàng)

    有時(shí)我們需要將來(lái)自于客戶端的文件上傳到WEB服務(wù)器端,并在服務(wù)端將文件存儲(chǔ)到第三方文件服務(wù)器中存儲(chǔ),既然有需求,那就有實(shí)現(xiàn)了,感興趣的你可以了解此文,或許對(duì)你學(xué)習(xí)asp.net 起到很好的作用哦
    2013-01-01
  • ASP.NET Core中快速構(gòu)建PDF文檔的步驟分享

    ASP.NET Core中快速構(gòu)建PDF文檔的步驟分享

    這篇文章主要給大家介紹了關(guān)于ASP.NET Core中快速構(gòu)建PDF文檔的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用ASP.NET Core具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • .NET中接口與類的區(qū)別淺析

    .NET中接口與類的區(qū)別淺析

    在我們?nèi)粘i_(kāi)發(fā)中經(jīng)常會(huì)用到接口與類,這兩者之間究竟有什么區(qū)別呢?又有哪些優(yōu)缺點(diǎn)?下面這篇文章就來(lái)給大家介紹了關(guān)于.NET中接口與類區(qū)別的相關(guān)資料,需要的朋友們可以參考借鑒,下面來(lái)一起看看吧。
    2017-08-08
  • asp.net 頁(yè)面轉(zhuǎn)向 Response.Redirect, Server.Transfer, Server.Execute的區(qū)別

    asp.net 頁(yè)面轉(zhuǎn)向 Response.Redirect, Server.Transfer, Server.Exec

    如果你讀過(guò)很多行業(yè)雜志和 ASP.NET 示例,你會(huì)發(fā)現(xiàn),大多數(shù)人使用 Response.Redirect 將用戶引導(dǎo)到另一個(gè)頁(yè)面,而另一些人好像偏愛(ài)于神秘的 Server.Transfer,那么,這二者有什么區(qū)別?
    2009-11-11
  • asp.net 中文字符串提交亂碼的解決方法

    asp.net 中文字符串提交亂碼的解決方法

    現(xiàn)在為一家工作室做網(wǎng)站,在登陸模塊中涉及到前端頁(yè)面通過(guò)AJAX傳遞中文的用戶名和字母的密碼到后臺(tái)驗(yàn)證,然后再把驗(yàn)證后的信息返回到前端的過(guò)程。
    2009-11-11
  • .NET Core 微信小程序退款步驟——(統(tǒng)一退款)

    .NET Core 微信小程序退款步驟——(統(tǒng)一退款)

    這篇文章主要介紹了.NET Core 微信小程序退款步驟——(統(tǒng)一退款),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論