導航:首頁 > 網路安全 > qt如何實現網路下載圖片

qt如何實現網路下載圖片

發布時間:2022-07-02 09:48:18

『壹』 怎樣用qt代碼編寫圖片保存格式

qt提供了多個保存圖片的介面,比較常用的介面如下
bool QPixmap::save ( const QString & fileName, const char * format = 0, int quality = -1 ) const
參數說明:
fileName 文件的路徑
可選參數:format 圖片的格式(qt目前支持的格式見下表),如果未設置該值
則根據文件路徑的後綴名來判斷圖片的存儲格式。
可選參數:quality 圖片的質量(可設置成0-100之內的值,數值越大說明保存的質量越好),如果未設置該值,則按照默認的設置來保存圖片。
表一:qt 4.6.3支持的文件格式
格式 描述
BMP Windows Bitmap
JPG Joint Photographic Experts Group
JPEG Joint Photographic Experts Group
PNG Portable Network Graphics
PPM Portable Pixmap
TIFF Tagged Image File Format
XBM X11 Bitmap
XPM X11 Pixmap

bool QImage::save ( const QString & fileName, const char * format = 0, int quality = -1 ) const
參數說明同上;
這里舉個使用QPixmap保存圖片的例子:
QPixmap pixmap;
if(pixmap.load("D:\\images\\source.png"))
{
if(pixmap.save("distance.jpg"))
{
//save image successful
}else
{
//save image failure;
}
}else
{
//load image failure
}
註:如果需要對圖片的保存參數進行更多的設置,可以使用QImageWriter提供的介面來實現

『貳』 Qt載入圖片資源庫

用rcc。。。rcc image.qrc -o xxx.ui,然後用QResource::registerResource("xxx.ui");即可。。。用的時候,就像用qrc資源一樣。這樣做的好處是,編譯出來的exe不會很大。

『叄』 qt如何在線獲取圖片

在網上找到圖片之後,復制到工程目錄中,之後將其添加進工程的資源問價即可!

『肆』 Qt怎麼顯示網路圖片

#include <QtGui/QtGui>

#include "CImage.h"

CImage::CImage(QWidget *parent):QDialog(parent)
{
ImageLabel=new QLabel(tr("載入中."));

QVBoxLayout *vboxLayout = new QVBoxLayout;
vboxLayout->addWidget(ImageLabel);
setLayout(vboxLayout);

setWindowTitle(tr("載入網路圖片測試"));
resize(300, 200);

currentPicture = new QPixmap;

//獲取網路圖片
QNetworkAccessManager *manager;
manager = new QNetworkAccessManager(this);

connect(manager, SIGNAL(finished(QNetworkReply*)),
this, SLOT(replyFinished(QNetworkReply*)));
manager->get(QNetworkRequest(QUrl("http://www.oschina.net/img/logo_s2.png")));
}

void CImage::replyFinished(QNetworkReply *reply)
{
if(reply->error() == QNetworkReply::NoError)
{
//獲取位元組流構造 QPixmap 對象
currentPicture->loadFromData(reply->readAll());
QDateTime now;
QString filename = now.currentDateTime().toString("yyMMddhhmmss.jpg");
currentPicture->save(filename);//保存圖片
//qDebug()<<"picture saved as "<<filename;
currentFileName = filename;

//可以在onpaint中 用QPixmap 顯示currentPicture,則這種方法則不需要保存

//顯示圖片,
QMovie *move = new QMovie(currentFileName);
ImageLabel->setMovie(move);
move->start();
}
}

『伍』 QT 如何對圖片進行操作

1、一個簡單的圖片顯示程序(以下僅是部分程序段,相信大家會看明白)

QPixmap pixmap( "image.jpg" ); //image.jpg在程序的當前目錄下。
PixmapLabel1->setPixmap(pixmap); //PixmapLabel1標簽即可顯示圖片。

2、將QImage轉換為QPixmap

QString fileName = QFileDialog::getOpenFileName(this,
tr("Open File"), QDir::currentPath());
if (!fileName.isEmpty())
{
QImage image(fileName); //定義QImage類。
if (image.isNull()) {
QMessageBox::information(this, tr("Image Viewer"),
tr("Cannot load %1.").arg(fileName));
return;
}
ui.label->setPixmap(QPixmap::fromImage(image)); 將QImage轉換為QPixmap。
}

3、QImage的載入圖片的方法(個人現只懂兩種)

(1)、QImage image(fileName); //直接在QImage類的構造函數搞定,fileName是指應用程序的當前目錄,相信大家能理解這里所說的當前目錄。

(2)、 QImage image;
image.load(fileName); //使用了load方法。

『陸』 QT編程的下載和使用

  1. qt 就是開源的, 免費下載,你只是去錯地方了,下載地址是http://qt-project.org/downloads

  2. 建議用QT creator,安裝vs後 qt creator 不會出現兼容錯誤

『柒』 如何用Qt的Qudpsocket傳輸圖片文件

主要是你通過socket api封裝要發送的數據,內部會自動封裝成數據流進行傳輸。
1,什麼是Socket
網路上的兩個程序通過一個雙向的通訊連接實現數據的交換,這個雙向鏈路的一端稱為一個Socket。Socket通常用來實現客戶方和服務方的連接。Socket是TCP/IP協議的一個十分流行的編程界面,一個Socket由一個IP地址和一個埠號唯一確定。
但是,Socket所支持的協議種類也不光TCP/IP一種,因此兩者之間是沒有必然聯系的。在Java環境下,Socket編程主要是指基於TCP/IP協議的網路編程。
2,Socket通訊的過程
Server端Listen(監聽)某個埠是否有連接請求,Client端向Server 端發出Connect(連接)請求,Server端向Client端發回Accept(接受)消息。一個連接就建立起來了。Server端和Client 端都可以通過Send,Write等方法與對方通信。
對於一個功能齊全的Socket,都要包含以下基本結構,其工作過程包含以下四個基本的步驟:
(1) 創建Socket;
(2) 打開連接到Socket的輸入/出流;
(3) 按照一定的協議對Socket進行讀/寫操作;
(4) 關閉Socket.(在實際應用中,並未使用到顯示的close,雖然很多文章都推薦如此,不過在我的程序中,可能因為程序本身比較簡單,要求不高,所以並未造成什麼影響。)
3,創建Socket
創建Socket
java在包java.net中提供了兩個類Socket和ServerSocket,分別用來表示雙向連接的客戶端和服務端。這是兩個封裝得非常好的類,使用很方便。其構造方法如下:
Socket(InetAddress address, int port);
Socket(InetAddress address, int port, boolean stream);
Socket(String host, int prot);
Socket(String host, int prot, boolean stream);
Socket(SocketImpl impl)
Socket(String host, int port, InetAddress localAddr, int localPort)
Socket(InetAddress address, int port, InetAddress localAddr, int localPort)
ServerSocket(int port);
ServerSocket(int port, int backlog);
ServerSocket(int port, int backlog, InetAddress bindAddr)

Socket client = new Socket("127.0.01.", 80);
ServerSocket server = new ServerSocket(80);

在創建socket時如果發生錯誤,將產生IOException,在程序中必須對之作出處理。所以在創建Socket或ServerSocket是必須捕獲或拋出例外。

『捌』 qt 怎麼加圖片資源

如果圖片比較小的話,可以在qrc文件裡面添加圖片的路徑和別名
<RCC>
<qresource prefix="/image">
<file alias="check_f">image/Check_f.png</file>
</qresource>
</RCC>
我這個,圖片路徑是image/Check_f.png,別名是check_f
qt會自動將這些圖片編譯成2進制文件,和exe一起
調用時,QLabel *l = new QLabel(this);
l->setPixmap(QPixmap(":/image/check_f"));
即可

『玖』 我想在C++中插入圖片,如果用QT要怎麼實現

要下載QT SDK的.
Qt對dev-C++和visual C++不默認支持.不過通過插件好像可以做到.
用Qt Creator開發也很給力野,為什麼要用dev-c++和visual c++呢.

閱讀全文

與qt如何實現網路下載圖片相關的資料

熱點內容
廣電網路信號滿 瀏覽:938
衛健委網路安全徵求意見 瀏覽:159
多個網路連接設置 瀏覽:391
有線網路出現信號不穩定 瀏覽:1000
網路如何構成一個系統 瀏覽:285
手機套餐降速後電腦無法使用網路 瀏覽:361
怎麼才算真正的網路工程師 瀏覽:739
百視通網路電視怎麼連接 瀏覽:341
揭陽移動網路安全宣傳周 瀏覽:474
電腦網路聯不起來怎麼回事 瀏覽:594
下載網路用詞什麼意思 瀏覽:690
保存了網路忘記了密碼怎麼辦 瀏覽:150
1PB網路流量需要多少M的寬頻 瀏覽:698
華為禁用無線網路 瀏覽:766
分路由器沒有無線網路 瀏覽:112
移動網路黑色機頂盒 瀏覽:147
網路廣告公司都是在哪裡找客戶 瀏覽:724
移動卡為什麼會無法訪問移動網路 瀏覽:25
y93電信無法使用移動網路 瀏覽:497
深圳在線網路電話軟體 瀏覽:788

友情鏈接