自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

學(xué)習(xí) QT 繪制圖形 從這里開始

移動開發(fā)
本文介紹的是學(xué)習(xí) QT 繪制圖形 從這里開始,關(guān)于QT繪圖的更多內(nèi)容,請參考文章末尾,先來看內(nèi)容。

學(xué)習(xí) QT 繪制圖形 從這里開始是本文呢介紹的內(nèi)容,不多說了,先來看內(nèi)容。說明:以后使用的環(huán)境為基于Qt 4.6的Qt Creator 1.3.0 windows版本

本文介紹在窗口上繪制最簡單的圖形的方法。

1、新建Qt4 Gui Application工程,我這里使用的工程名為painter01,選用QDialog作為Base class

2、在dialog.h文件中聲明重繪事件函數(shù)void paintEvent(QPaintEvent *);

3、在dialog.cpp中添加繪圖類QPainter的頭文件包含#include <QPainter>

4、在下面進(jìn)行該函數(shù)的重定義。

  1. void Dialog::paintEvent(QPaintEvent *)  
  2. {  
  3. QPainter painter(this);  
  4. painter.drawLine(0,0,100,100);  

其中創(chuàng)建了QPainter類對象,它是用來進(jìn)行繪制圖形的,我們這里畫了一條線Line,其中的參數(shù)為線的起點(0,0),和終點 (100,100)。這里的數(shù)值指的是像素,詳細(xì)的坐標(biāo)設(shè)置我們以后再講,這里知道(0,0)點指的是窗口的左上角即可。運行效果如下:

學(xué)習(xí) QT 繪制圖形 從這里開始

5、在qt的幫助里可以查看所有的繪制函數(shù),而且下面還給出了相關(guān)的例子。

學(xué)習(xí) QT 繪制圖形 從這里開始 

學(xué)習(xí) QT 繪制圖形 從這里開始

6、我們下面將幾個知識點說明一下,幫助大家更快入門。

將函數(shù)改為如下:

  1. void Dialog::paintEvent(QPaintEvent *)  
  2. {  
  3. QPainter painter(this);  
  4.     QPen pen; //畫筆  
  5. pen.setColor(QColor(255,0,0));  
  6. QBrush brush(QColor(0,255,0,125)); //畫刷  
  7.  
  8.     painter.setPen(pen); //添加畫筆  
  9. painter.setBrush(brush); //添加畫刷  
  10. painter.drawRect(100,100,200,200); //繪制矩形  

這里的pen用來繪制邊框,brush用來進(jìn)行封閉區(qū)域的填充,QColor類用來提供顏色,我們這里使用了rgb方法來生成顏色,即 (red,green,blue),它們?nèi)≈捣謩e是0-255,例如(255,0,0)表示紅色,而全0表示黑色,全255表示白色。后面的 (0,255,0,125),其中的125是透明度(alpha)設(shè)置,其值也是從0到255,0表示全透明。最后將畫筆和 畫刷添加到painter繪制設(shè)備中,畫出圖形。這里的Rect是長方形,其中的參數(shù)為(100,100)表示起始坐標(biāo),200,200表示長和寬。效果 如下:

學(xué)習(xí) QT 繪制圖形 從這里開始 

#p#

7.其實畫筆和畫刷也有很多設(shè)置,大家可以查看幫助。

  1. QPainter painter(this);  
  2.     QPen pen(Qt::DotLine);  
  3. QBrush brush(Qt::blue);  
  4. brush.setStyle(Qt::HorPattern);  
  5.     painter.setPen(pen);  
  6. painter.setBrush(brush);  
  7. painter.drawRect(100,100,200,200); 

這里我們設(shè)置了畫筆的風(fēng)格為點線,畫刷的風(fēng)格為并行橫線,效果如下:

學(xué)習(xí) QT 繪制圖形 從這里開始 

在幫助里可以看到所有的風(fēng)格。

學(xué)習(xí) QT 繪制圖形 從這里開始

學(xué)習(xí) QT 繪制圖形 從這里開始

我們這里用了Qt::blue,Qt自定義的幾個顏色如下:

學(xué)習(xí) QT 繪制圖形 從這里開始

8.畫弧線,這是幫助里的一個例子。

  1. QRectF rectangle(10.0, 20.0, 80.0, 60.0); //矩形  
  2. int startAngle = 30 * 16;     //起始角度  
  3. int spanAngle = 120 * 16;   //跨越度數(shù)  
  4.      QPainter painter(this);  
  5. painter.drawArc(rectangle, startAngle, spanAngle); 

這里要說明的是,畫弧線時,角度被分成了十六分之一,就是說,要想為30度,就得是30*16。它有起始角度和跨度,還有位置矩形,要想畫出自己想 要的弧線,就要有一定的幾何知識了。這里就不再祥述。

學(xué)習(xí) QT 繪制圖形 從這里開始

小結(jié):關(guān)于學(xué)習(xí) QT 繪制圖形 從這里開始的內(nèi)容到這里介紹完了,希望本我對你有所幫助!

責(zé)任編輯:zhaolei 來源: 互聯(lián)網(wǎng)
相關(guān)推薦

2023-09-07 08:24:35

圖形編輯器開發(fā)繪制圖形工具

2009-10-23 16:43:01

VB.NET繪制圖形

2013-12-04 16:07:27

Android游戲引擎libgdx教程

2013-12-27 13:00:30

Android開發(fā)Android應(yīng)用Context Men

2017-02-08 10:00:29

大數(shù)據(jù)hadoopHDFS

2009-01-05 10:47:50

2023-01-04 11:18:21

Canvas 封裝pixi.js

2023-05-16 07:44:03

紋理映射WebGL

2020-11-23 16:57:50

數(shù)據(jù)泄漏/個人身份信息

2021-09-24 09:45:27

Python神經(jīng)網(wǎng)絡(luò)人工智能

2020-06-01 08:46:35

機(jī)器學(xué)習(xí)數(shù)學(xué)Python

2019-06-04 08:09:39

物聯(lián)網(wǎng)工程師物聯(lián)網(wǎng)IOT

2022-01-17 16:58:39

進(jìn)程調(diào)度端口

2015-05-05 09:06:59

2013-01-09 10:20:26

jQueryFlotjQuery插件

2020-08-21 08:22:24

SpringMVC

2020-11-25 03:11:17

網(wǎng)絡(luò)安全網(wǎng)絡(luò)安全技術(shù)周刊

2013-08-16 14:37:26

2009-08-07 10:00:24

開發(fā)云計算應(yīng)用開發(fā)云計算人員

2023-04-11 07:48:32

WebGLCanvas
點贊
收藏

51CTO技術(shù)棧公眾號