久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

Qt入門筆記1

 ylsnData 2017-12-28

文章目錄:

1,QPushButton的使用
2,QLineEdit的使用

3,QTextEdit的使用
4,RadioButton的使用
5,CheckBox的使用
6,TableWidget的使用
7,QComboBox的使用
8,QDataTime的使用
9,Spin Box的使用
11,Progress Bar的使用
12,Label的使用
13,QTime時鐘類的使用
14,QToolBox工具盒類的使用
15,QPalette調(diào)色板類
16,分割窗口Qsplitter類
17,QListWidget類的使用
15,QPalette調(diào)色板類
16,分割窗口Qsplitter類
17,QListWidget類的使用
18,基本的布局類
19,標準文件對話框
20,標準顏色對話框
21,標準字體對話框
22,標準輸入對話框
23,消息對話框
24,打開文件操作
25,保存文件代碼
26,二維圖形
27,背景圖片設(shè)置
27,打開文件

1,QPushButton的使用

 設(shè)置按鈕背景色

ui->pushButton->setStyleSheet("background-color:green");
  設(shè)置按鈕字體顏色
ui->pushButton->setStyleSheet("color:red");
ui->pushButton->setStyleSheet("QPushButton{font:bold 16px;color:red}");
  設(shè)置按鈕背景圖片
ui->pushButton->setIconSize(QSize(ui->pushButton->width(),ui->pushButton->height())); 
ui->pushButton->setIcon(QIcon(QPixmap(":/file/image/map.png")));

2,QLineEdit的使用

 設(shè)置值
ui->lineEdit->setText("hello");
獲取值
qDebug() << ui->lineEdit->text();
設(shè)置密碼模式
ui->lineEdit->setEchoMode(QLineEdit::Password);
輸入的密碼自動變成圓形圖案
 ui->lineEdit->setEchoMode(QLineEdit::PasswordEchoOnEdit);
輸入的密碼在失焦后變成圓形圖案
ui->lineEdit->setPlaceholderText("input text:"); 提示輸入
ui->lineEdit->setGeometry(50,50,100,100);  //設(shè)置位置大小

3,QTextEdit的使用

 設(shè)置值
ui->textEdit->setText("hello");
ui->textEdit->append(“hello”);  //追加
  獲取值
qDebug() << ui->textEdit->toPlainText();

4,RadioButton的使用

選中
ui->radioButton->setCheckable(true);
ui->radioButton->setChecked(true);
 取消選中
ui->radioButton->setCheckable(false);
Radio button特性是多個只能選中一個

5,CheckBox的使用

 選中
ui->checkBox->setCheckable(true); 
ui->checkBox->setChecked(true); 
ui->checkBox_2->setChecked(true);
取消選中
ui->checkBox->setChecked(false);
 查詢選中狀態(tài)
qDebug() << ui->checkBox_2->isChecked();
Check Box特性是同時可以選中多個

6,TableWidget的使用

設(shè)置表格行列數(shù)
ui->tableWidget->setColumnCount(4); 
ui->tableWidget->setRowCount(3);
 往表格中添加元素
QTableWidgetItem *itm = new QTableWidgetItem(tr("a")); 
ui->tableWidget->setItem(1,1,itm);
itm->setTextAlignment(Qt::AlignLeft);
QLabel *label = new QLabel();
 label->setPixmap(QPixmap(":/file/image/map.png").scaled(40,50)); ui->tableWidget->setCellWidget(0,0,label);

7,QComboBox的使用

 QComboBox *box = new QComboBox(); 
box->addItem("male");
box->addItem("female"); 
ui->tableWidget->setCellWidget(0,2,box);

 獲取條目值
qDebug() << box->currentText();
qDebug() << box->itemText(1);

8,QDataTime的使用

QDateTimeEdit *time = new QDateTimeEdit(); 
time->setDateTime(QDateTime::currentDateTime()); 
time->setDisplayFormat("dd/M/yyyy"); 
time->setCalendarPopup(true); //鼠標點上去,,自動彈出日歷
ui->tableWidget->setCellWidget(2,0,time);

9,Spin Box的使用

 創(chuàng)建,、設(shè)置范圍,、設(shè)置步進值
ui->spinBox->setRange(1,100); 
ui->spinBox->setSingleStep(10); 
ui->spinBox->setValue(20);
 獲取當前值
qDebug() << ui->spinBox->value();

10,LCD Number的使用

 設(shè)置顯示數(shù)值位數(shù),、設(shè)置值,、設(shè)置顯示模式
ui->lcdNumber->setDigitCount(10); 
ui->lcdNumber->setHexMode(); 
ui->lcdNumber->display(1000); 

11,Progress Bar的使用

  設(shè)置范圍,、設(shè)置顯示進度值
 ui->progressBar->setRange(1,100); 
 ui->progressBar->setValue(60);

12,Label的使用

 創(chuàng)建、設(shè)置背景色,、設(shè)置標簽文字,、獲取標簽
ui->label->setStyleSheet("background-color:red"); 
ui->label->setText("hello"); 
qDebug() << ui->label->text();

13,QTime時鐘類的使用

A QTime object contains a clock time, i.e. the number of hours, minutes, seconds, and milliseconds since midnight 
QTime time = QTime::currentTime(); 
qDebug() << time.hour(); 
QString text = time.toString("hh:mm"); 
qDebug() << text;

14,QToolBox工具盒類的使用

 QToolBox, QToolButton 
ui->toolButton->setText("小明"); 
ui->toolButton->setIcon(QPixmap(":/file/images/1.png"));
ui->toolButton->setIconSize(QPixmap(":/file/images/1.png").size()); 
ui->toolButton->setToolButtonStyle(Qt::ToolButtonTextBesideIcon); 
ui->toolButton->setAutoRaise(true); 


15,QPalette調(diào)色板類

  例: 設(shè)置背景圖片
setAutoFillBackground(true); 
QPalette pal;
pal.setBrush(QPalette::Background,QBrush(QPixmap(":/1.jpg"))); 
setPalette(pal);


使用樣式表(setStyleSheet函數(shù))比調(diào)色板更加可靠

16,分割窗口Qsplitter類


split = new QSplitter(); 
edit1 = new QTextEdit(); 
edit2 = new QTextEdit(); 
edit3 = new QTextEdit();
split->addWidget(edit1);
split->addWidget(edit2);
split->addWidget(edit3);
split->setWindowTitle("split window");
split->show();


17,QListWidget類的使用


18,基本的布局類:

(1)水平布局

btn1 = new QPushButton(tr("C")); 
btn2 = new QPushButton(tr("C++"));
  btn3 = new QPushButton(tr("Java")); QHBoxLayout *layout = new QHBoxLayout(); 
layout->addWidget(btn1); 
layout->addWidget(btn2); 
layout->addWidget(btn3); setLayout(layout);


(2)垂直布局
btn1 = new QPushButton(tr("C")); 
btn2 = new QPushButton(tr("C++"));
  btn3 = new QPushButton(tr("Java")); QVBoxLayout *layout = new QVBoxLayout();
layout->addWidget(btn1); 
layout->addWidget(btn2); 
layout->addWidget(btn3); setLayout(layout);


(3)柵格布局
lab1 = new QLabel(tr("姓名")); 
lab2 = new QLabel(tr("性別")); 
line1 = new QLineEdit();
box = new QComboBox(); 
box->addItem("男"); 
box->addItem("女"); 
lab3 = new QLabel(tr("備注:以上信息請認真填寫"));
  lab4 = new QLabel(tr("個人簡介")); 
edit = new QTextEdit(); 
QGridLayout *layout = new QGridLayout(); 
layout->addWidget(lab1, 0, 0);
layout->addWidget(line1, 0, 1);
layout->addWidget(lab2, 1, 0); 
layout->addWidget(box, 1, 1);
layout->addWidget(lab4, 2, 0);
layout->addWidget(edit, 2, 1); layout->addWidget(lab3, 3, 0, 1, 2);
  setLayout(layout);


19,標準文件對話框

  QFileDialog
QString s = QFileDialog::getOpenFileName
(this, "open file dialog", "/", 
"C++ files (*.cpp);;C files (*.c);;Head files (*.h);;all files(*.*)");
ui->lineEdit->setText(s);

20,標準顏色對話框

 QColorDialog
QColor color = QColorDialog::getColor (Qt::blue); if(color.isValid()) 

ui->frame->setAutoFillBackground(true); 
ui->frame->setPalette(QPalette(color)); 
}

21,標準字體對話框

QFontDialog
bool ok;                  
QFont font = QFontDialog::getFont( &ok );      
if( ok )     
{    
fontLineEdit->setFont( font );    
}

22,標準輸入對話框

QInputDialog
bool ok; 
QString name = QInputDialog::getText(this, tr("User Name"), tr("Please input new name:"), QLineEdit::Normal, ui->nameLabel->text(),&ok);
if(ok && !name.isEmpty()) 
ui->nameLabel->setText(name);
QStringList list; 
list << tr("male") << tr("female"); 
bool ok; 
QString sex = QInputDialog::getItem(this,tr(“Sex”), tr(“Please selectsex:”),list,0,false,&ok);        //false參數(shù)表示對list不能作修改
if (ok) 
ui->nameLabel->setText(sex);

23,消息對話框

QMessageBox
switch(QMessageBox::question(this,"Question",tr("It's end of document,search from begin?"),
    QMessageBox::Ok|QMessageBox::Cancel,QMessageBox::Ok))
   {
  case QMessageBox::Ok:
    label->setText(" Question button / Ok ");
    break;
    case QMessageBox::Cancel:
    label->setText(" Question button / Cancel ");
    break;
    default:
    break;
    }


QMessageBox::information(this,"Information",tr("anything you want tell user"));


 switch(QMessageBox::warning(this,"Warning",tr("Save changes to document?"),
   QMessageBox::Save|QMessageBox::Discard|QMessageBox::Cancel,QMessageBox::Save))
    {
    case QMessageBox::Save:
    label->setText(" Warning button / Save ");
    break;
    case QMessageBox::Discard:
    label->setText(" Warning button / Discard ");
    break;
    case QMessageBox::Cancel:
    label->setText(" Warning button / Cancel ");
    break;
    default:
    break;
    }


24,打開文件操作


25,保存文件代碼


26,二維圖形

  Qt的二維圖形引擎是基于Qpainter類,QPainter既可以繪制幾何形狀(點,、線,、矩形、橢圓,、弧形,、多邊形等),也可以繪制像素映射,、圖像,、文字
  重新實現(xiàn)QWidget::paintEvent()可用于定制窗口部件
  使用Qpainter的draw函數(shù),可以繪制各種各樣的形狀,,繪制的效果取決于Qpainter的設(shè)置,。三個主要的設(shè)置是畫筆、畫刷和字體


利用Qpainter繪制各種圖形

畫筆QPen類
The QPen class defines how a QPainter should draw lines and outlines of shapes,。
A pen has a style(), width(), brush(), capStyle() and joinStyle().


畫刷類QBrush
The QBrush class defines the fill pattern of shapes drawn by QPainter.
A brush has a style, a color, a gradient and a texture.


重寫paintEvent函數(shù)
當調(diào)用update函數(shù)時,,paintEvent函數(shù)會被自動調(diào)用

oid Dialog::paintEvent(QPaintEvent *)
 { 
QPainter painter(this);
painter.setPen(Qt::blue); 
painter.setFont(QFont("Arial", 30));
  painter.drawText(rect(), Qt::AlignCenter, "Qt");painter.drawLine(110,20,30,40);painter.drawPixmap(45,69,QPixmap(":/file/image/4.png"));
 }




27,背景圖片設(shè)置


27,打開文件

  Qfile  open方法


讀寫文本文件

文件讀寫一般通過QTextStream (文本方式)或者QDataStream(二進制方式)進行
寫文件
QFile file("test.txt"); 
/*如果文件不存在,會自動創(chuàng)建*/ 
if (file.open(QIODevice::WriteOnly | QIODevice::Text)) 
{
QTextStream out(&file); 
out << "hello world" << endl << "nihao" << endl;
  }
else 
{
QMessageBox::information(this, "msg", "file not found");
}

使用QDataStream進行文件讀寫


 


    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多