導航:首頁 > 網路安全 > 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如何實現網路下載圖片相關的資料

熱點內容
微電影網路營銷 瀏覽:854
如何讓網路攝像頭在手機上 瀏覽:184
為什麼華為手機的移動網路卡 瀏覽:395
移動網路種子怎麼下載不了 瀏覽:1000
虛擬網路和本地連接區別 瀏覽:280
網路產品被投訴後如何寫道歉信 瀏覽:996
童裝店鋪如何設置網路客服 瀏覽:214
說一個人脆是什麼網路意思 瀏覽:358
神經網路的圖怎麼畫 瀏覽:268
如何反駁網路人雲亦雲 瀏覽:44
iwatchse蜂窩版網路信號好嗎 瀏覽:95
換路由器網路無法連接 瀏覽:210
相機wifi無網路 瀏覽:176
計算機網路中的結點包括什麼 瀏覽:545
wifi信號差是網路問題嗎 瀏覽:290
手機與手機對接連接上網路 瀏覽:343
聯通總提示網路異常 瀏覽:476
寧波有哪些網路教育學校 瀏覽:628
金骨朵網路劇哪個好看 瀏覽:822
網路搜索共享素材 瀏覽:613