⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.cpp

📁 qt-x11-free-3.0.3.tar.gz minigui图形界面工具
💻 CPP
字号:
/****************************************************************************** $Id$**** Copyright (C) 1992-2000 Trolltech AS.  All rights reserved.**** This file is part of an example program for Qt.  This example** program may be used, distributed and modified without limitation.*******************************************************************************/#include "main.h"CustomEdit::CustomEdit( QWidget *parent, const char *name ) :     QLineEdit( parent, name ){    connect( this, SIGNAL(textChanged(const QString &)), 	     this, SLOT(changed(const QString &)) );}void CustomEdit::changed( const QString &line ){    setUpperLine( line );}void CustomEdit::setUpperLine( const QString &line ){    upperLineText = line.upper();    setText( upperLineText );}QString CustomEdit::upperLine() const {    return upperLineText;}FormDialog::FormDialog(){    QLabel	*forenameLabel	= new QLabel( "Forename:", this );    CustomEdit	*forenameEdit	= new CustomEdit( this );    QLabel	*surnameLabel   = new QLabel( "Surname:", this );    CustomEdit	*surnameEdit	= new CustomEdit( this );    QLabel	*salaryLabel	= new QLabel( "Salary:", this );    QLineEdit	*salaryEdit	= new QLineEdit( this );    salaryEdit->setAlignment( Qt::AlignRight );    QPushButton *saveButton	= new QPushButton( "&Save", this );    connect( saveButton, SIGNAL(clicked()), this, SLOT(save()) );    QGridLayout *grid = new QGridLayout( this );    grid->addWidget( forenameLabel, 0, 0 );    grid->addWidget( forenameEdit,  0, 1 );    grid->addWidget( surnameLabel,  1, 0 );    grid->addWidget( surnameEdit,   1, 1 );    grid->addWidget( salaryLabel,   2, 0 );    grid->addWidget( salaryEdit,    2, 1 );    grid->addWidget( saveButton,    3, 0 );    grid->activate();    staffCursor = new QSqlCursor( "staff" );    staffCursor->setTrimmed( "forename", TRUE );    staffCursor->setTrimmed( "surname",  TRUE );    idIndex = staffCursor->index( "id" );    staffCursor->select( idIndex );    staffCursor->first();    propMap = new QSqlPropertyMap;    propMap->insert( forenameEdit->className(), "upperLine" );    sqlForm = new QSqlForm( this );    sqlForm->setRecord( staffCursor->primeUpdate() );    sqlForm->installPropertyMap( propMap );    sqlForm->insert( forenameEdit, "forename" );    sqlForm->insert( surnameEdit, "surname" );    sqlForm->insert( salaryEdit, "salary" );    sqlForm->readFields();}FormDialog::~FormDialog(){    delete staffCursor;}void FormDialog::save(){    sqlForm->writeFields();    staffCursor->update();    staffCursor->select( idIndex );    staffCursor->first();}int main( int argc, char *argv[] ){    QApplication app( argc, argv );    if ( ! createConnections() ) 	return 1;    FormDialog *formDialog = new FormDialog();    formDialog->show();    app.setMainWidget( formDialog );    return app.exec();}bool createConnections(){    // create the default database connection    QSqlDatabase *defaultDB = QSqlDatabase::addDatabase( DB_SALES_DRIVER );    if ( ! defaultDB ) {	qWarning( "Failed to connect to driver" );	return FALSE;    }    defaultDB->setDatabaseName( DB_SALES_DBNAME );    defaultDB->setUserName( DB_SALES_USER );    defaultDB->setPassword( DB_SALES_PASSWD );    defaultDB->setHostName( DB_SALES_HOST );    if ( ! defaultDB->open() ) { 	qWarning( "Failed to open sales database: " + 		  defaultDB->lastError().driverText() );	qWarning( defaultDB->lastError().databaseText() );	return FALSE;    }    // create a named connection to oracle    QSqlDatabase *oracle = QSqlDatabase::addDatabase( DB_ORDERS_DRIVER, "ORACLE" );    if ( ! oracle ) {	qWarning( "Failed to connect to oracle driver" );	return FALSE;    }    oracle->setDatabaseName( DB_ORDERS_DBNAME );    oracle->setUserName( DB_ORDERS_USER );    oracle->setPassword( DB_ORDERS_PASSWD );    oracle->setHostName( DB_ORDERS_HOST );    if ( ! oracle->open() ) {	qWarning( "Failed to open orders database: " + 		  oracle->lastError().driverText() );	qWarning( oracle->lastError().databaseText() );	return FALSE;    }    return TRUE;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -