❶ qt creator 安裝後怎麼配置
下載安裝MinGW
從MinGW網站下載mingw
默認安裝到C盤根目錄下:D:\MinGW,可以換到自己喜歡的路徑。
安裝時選擇C和C++ compiler ,默認只選中了C編譯器。因此一定要注意根據自己的需求懸著編譯器。如果選錯需要刪除重新安裝。
下載安裝完之後設置環境變數畝卜迅設置環境變數(此處高能)。 a. 滑鼠右擊桌面「計算機」(WindowsXp是「我的電腦」)->「屬性」 b. WindowsXP時,在新彈出的屬性窗口,選擇「高級」->「環境變數」。 Windows7時,在新彈出的屬性窗口,選擇左側的「高級系統設置」,在新彈出的屬性窗口,選擇「高級」->「環境變數」。 c. 把MinGW安裝目錄的bin目錄的路徑追加到PATH里,然後確定。 注意:箭頭指的兩個分號一定要加上並且分號一定要在英文輸入模式下輸入
下載安裝配置QT libraries
Qtlibraries可以到網上去搜索qt-opensource-windows-x86-mingw482-4.8.6-1.exe,但注意一定要找正式版的。
設置安裝路徑為D:\Qt\4.8.4,安裝時需要指定MinGW的安裝路徑為D:\MinGW,這里千千萬萬要注意,QT類庫安裝的時候是需要和MinGW進行關聯的。如果找不到後面就悲劇了啊!!!!
修改環境變數:計算機->屬性->高級系統設置->環境變數
安裝完後需要把D:\Qt\4.8.4\bin目錄添加(原來的別刪了,以「;」做間隔)到系統變數的Path路徑中。
並新建系統環境變數QMAKESPEC,把值設置為D:\Qt\4.8.4\mkspecs\win32-g++;
還要新建系統環境變數QTDIR,值為D:\Qt\4.8.4
安裝成功後打開QT設計師主界面如圖:
打開Qt 設計師 開始->Qt by Digia v4.8.4 ->Designer 。
如果Qt lib 安裝成功! 關掉Qt Designer
Qtcreater可以到網上去搜索qt-creator-opensource-windows-x86-3.1.2.zip
安裝:需要把C:\Qt\qtcreator-2.7.1\bin目錄添加到系統變數的Path路徑中。如果不設置系統環境變數,則創建工程時kit不能設置成功,並且可創建的工程類型也會受到限制。
設置QT Creator構建和運行配置項 打開QT Creator,選擇菜單「工具/選項」,選擇左邊的"構建和運行",再選擇「Qt版本」選項卡,點擊「添加」,qmake路徑:D:\Qt\4.8.4\bin\qmake.exe。
還需要設置Compilers(編譯器)選項卡中的「手動設置」項的編譯器,Name設置為MinGW,編譯器路徑設置為D:\MinGW\bin\mingw32-g++.exe
新增構建套件,編譯器和QT版本選擇自己新增的
然後就可以正常的創建工程了。
打開Qt creater 後打開菜單欄 工具->選項
配製成如圖所示:
7
安裝QT調試工具:
debugger工具使用對應的MingW下面的Gdb.exe:
注意迅此此處一定要關聯正確,關弊消聯錯誤會導致,可以編譯運行,但是不能進行調試。
❷ qt實現ftp創建文件夾命令
本文實例為大家分享了QT實現FTP上傳文件的具體代碼,供大家參考,具體內容如下
兩台電腦通過網線建立本地連接,保證網關在同一段;
伺服器端打開ftp;
控制面板→程序→啟用或關閉windows功能→windows功能→Internet信息歷察服務
啟用「FTP服務」FTP擴展性」 IIS管理控制台」
開始屏幕的搜索中輸入「IIS」,然後點擊打開「IIS管理器」
打開「IIS管理器」後,在左欄的「網站」上點擊右鍵,打開「添加FTP站點」
然後按照提示填寫站點信息
點擊「下一步」,按照下圖提示,設置「綁定和SSL設置」,在「IP地址」處,可以用內網IP也可以用外網讓爛拍IP,訪客自然也就根據你的IP設定來決定;
點擊「下一步」,設置「身份驗證和授權信息」
然後在本機瀏覽器地址欄中輸入「ftp://填寫的IP」測試一下
客戶端網頁測試遠程訪問;
客戶端(另一台電腦)瀏覽器地址欄中輸入「ftp://填寫的IP」測試一下
客戶端cmd測試遠程訪問;
win+r打開運行窗口,輸入cmd
回車打開cmd命令窗口
cmd命令中輸入:ftp回車
回車切換至ftp命令窗口,輸入命令:open,回車提示:到
到即所要連接測試的ftp地址,我們輸入:IP 22
即:ip地址+空格+埠號,沒有+號
回車後彈出用戶一行,輸入ftp的用戶名後回車,輸入ftp用戶名對應的密碼
輸入密碼後回車,如果提示,user logged in就說么ftp創建無問題
客戶端程序測試遠程訪問。
新建程序,添加ftpclass.cpp、ftpclass.h,復制main.cpp內容到程序入口函數
注意:/項目-屬性-常規-字元集-使用多位元組字元集/
//main.cpp
#include "stdafx.h"
#include "ftpclass.h"
void main()
{
printf("------- 開始測試!------\n");
printf("01--創建連接 %d\n", FtpClass::createConnection());
printf("02--打開目標ftp %d\n", FtpClass::createTable());
/*可以讀取ini內參數
FtpClass::ftp_Ip = TEXT("Ini讀取");
FtpClass::ftp_Port = TEXT("Ini讀取");
FtpClass::ftp_User = TEXT("Ini讀取");
FtpClass::ftp_Password = TEXT("Ini讀取");
FtpClass::ftp_Fixed_Path = TEXT("Ini讀取");*/
printf("03--創建文件夾 %d\n", FtpClass::createFolder("自動生成目錄1","自動生成目錄2","自動生成目錄3"));
/*上傳目標路徑*/
printf("04--上傳文件 %d\n", FtpClass::insert( "D:/a.txt", "b.txt"));
/*本機文件需要上傳文件*/ /*上傳後文件名稱,可以和本地文件名稱不一樣,類型最好別換*/
printf("05--關閉通訊 %d\n"坦羨, FtpClass::createClose());
printf("------ 結束測試!------\n");
return ;
}
//ftpclass.h
/*項目-屬性-常規-字元集-使用多位元組字元集*/
/*wininet.lib、shlwapi.lib可以直接添加到附加依賴項*/
/*BOOL_VERIFY、NULL_VERIFY 程序結束判斷*/
#pragma once
#pragma comment(lib,"wininet.lib")
#pragma comment(lib,"shlwapi.lib")
#define BOOL_VERIFY(emStatus_bool,switch_bool) \
if (emStatus_bool == true)\
{return true;}\
else{\
if (switch_bool == 3) printf(" FTP_03_err:創建文件夾失敗!%d\n"); \
if (switch_bool == 4) printf(" FTP_04_err:上傳文件失敗!\n"); \
if (switch_bool == 5) printf(" FTP_05_err:關閉窗口句柄失敗!\n"); \
return false;\
}
#define NULL_VERIFY(emStatus_null,switch_null) \
if (emStatus_null != NULL)\
{return true;}\
else{\
if (switch_null == 1) {printf(" FTP_01_err:打開通訊錯誤 Error:%d\n", GetLastError());}\
if (switch_null == 2) {printf(" FTP_02_err:建立連接錯誤 Error:%d\n", GetLastError());}\
return false;\
}
#include "stdafx.h"//沒用
#include <afxinet.h>//MFC相關
#include "wininet.h"//調用FTP相關類
#include "shlwapi.h"//調用文件操作相關類
class FtpClass
{
public:
/*ini讀取變數*/
static CString ftp_Ip;//目標ip
static CString ftp_Port;//目標埠
static CString ftp_User;//目標賬戶
static CString ftp_Password;//目標密碼
static CString ftp_Fixed_Path;//目標固定路徑
static CString ftp_Free_Path;//目標自己生成路徑
/*全局變數*/
static BOOL pRes;
static HINTERNET hInternet;
static HINTERNET hConnect;
/*全局函數*/
static bool createConnection(); //創建一個連接
static bool createTable();
static bool ThreadInternetConnect(PVOID )
//打開目標ftp
static bool createFolder(CString temp1, CString temp2, CString temp3); //上傳文件
static bool insert(CString temp, CString temp1); //出入數據
static bool createClose(); //斷開連接
};
//ftpclass.cpp
#include "stdafx.h"
#include "ftpclass.h"
CString FtpClass::ftp_Ip = TEXT("192.168.3.104");
CString FtpClass::ftp_Port = TEXT("21");
CString FtpClass::ftp_User = TEXT("Administrator");
CString FtpClass::ftp_Password = TEXT("xinxin");
CString FtpClass::ftp_Fixed_Path = TEXT("1級固定目錄/2級固定目錄/3級固定目錄");
CString FtpClass::ftp_Free_Path = TEXT("自動生成目錄");
BOOL FtpClass::pRes = false;
HINTERNET FtpClass::hInternet = NULL;
HINTERNET FtpClass::hConnect = NULL;
//創建一個連接
bool FtpClass::createConnection() {
/*ftp_Ip = TEXT("Ini讀取");
ftp_Port = TEXT("Ini讀取");
ftp_User = TEXT("Ini讀取");
ftp_Password = TEXT("Ini讀取");
ftp_Fixed_Path = TEXT("Ini讀取");*/
hInternet = InternetOpen(NULL, INTERNET_OPEN_TYPE_DIRECT,
NULL, NULL, INTERNET_FLAG_NO_CACHE_WRITE);
NULL_VERIFY(hInternet,1);
}
bool FtpClass::ThreadInternetConnect(PVOID param) {
// 打開http
hConnect = InternetConnect(hInternet, ftp_Ip, INTERNET_DEFAULT_FTP_PORT,//INTERNET_DEFAULT_FTP_PORT 第三個參數默認值21
ftp_User, ftp_Password, INTERNET_SERVICE_FTP,
INTERNET_FLAG_EXISTING_CONNECT || INTERNET_FLAG_PASSIVE, 0);
return 1;
}
//打開目標ftp
bool FtpClass::createTable()
{
/*hConnect = InternetConnect(hInternet, ftp_Ip, 25,//INTERNET_DEFAULT_FTP_PORT 第三個參數默認值21
ftp_User, ftp_Password, INTERNET_SERVICE_FTP,
INTERNET_FLAG_EXISTING_CONNECT || INTERNET_FLAG_PASSIVE, 0);
NULL_VERIFY(hConnect,2);*/
HANDLE hThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)ThreadInternetConnect, (LPVOID)NULL, 0, NULL);
//超時3秒,如果等待結果是超時
if (WaitForSingleObject(hThread, 3 * 1000) == WAIT_TIMEOUT) {
TerminateThread(hThread, 0);
CloseHandle(hThread);
NULL_VERIFY(hConnect, 2);
}
NULL_VERIFY(hConnect, 2);
}
//上傳文件
bool FtpClass::createFolder(CString temp1, CString temp2, CString temp3)
{
/*新建文件件每次只能創建一級,多個需要分多次創建*/
pRes = false;
ftp_Free_Path = "";
ftp_Free_Path = ftp_Fixed_Path + "/" + temp1;
FtpCreateDirectory(hConnect, ftp_Free_Path);
ftp_Free_Path = ftp_Free_Path + "/" + temp2;
FtpCreateDirectory(hConnect, ftp_Free_Path);
ftp_Free_Path = ftp_Free_Path + "/" + temp3;
pRes = FtpCreateDirectory(hConnect, ftp_Free_Path);
BOOL_VERIFY(pRes,3);
}
//出入數據
bool FtpClass::insert(CString temp, CString temp1)
{
pRes = false;
ftp_Free_Path = ftp_Free_Path + "/" +temp1;
pRes = FtpPutFile(hConnect, temp,/*本機文件*/
ftp_Free_Path, /*TEXT("一級目錄/二級目錄/三級目錄/a.txt"),*/
FTP_TRANSFER_TYPE_ASCII, 0);
BOOL_VERIFY(pRes,4);
}
//斷開連接
bool FtpClass::createClose()
{
pRes = false;
if (InternetCloseHandle(hConnect))
pRes = InternetCloseHandle(hInternet);
BOOL_VERIFY(pRes,5);
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
❸ 如何利用VS2010進行QT開發的環境配置
1.下載qt的安裝包和vs2010的qt插件,大拿扮昌家可以到下面的地址進行下載
BBS:cn.org/bbs/read-htm-tid-1075.html
官網:
qt.io/download/
本人是在BBS上找到的,官網上沒仔細去找了(英文太多)。
2.安裝qtsdk
安裝其實很簡單了,基本上一路回車即可,主要是要注意下qt的安裝路徑最好安裝在全英文路徑而且中間沒有空格,安裝好後,可以運行開始菜單裡面的qtdemo,直觀感受下qt的強大功能!
界面非常炫酷
4.編譯qt
qt默認使用mingw進行編譯,如果要使用vs2010開發,需要將qt重新編譯。
進入開始菜單microsoftvisualstudio2010,visualstudiotools,visualstudiocommandprompt(2010),消扒需要注意的是,這裡面必須是使用visualstudiocommandprompt(2010),不能使用cmd的dos窗口
進入qt的安裝目錄缺枯後,執行cdqt,進入qt的根目錄
❹ qt creator怎麼創建一個文件
假設你的項目在名搜哪為demo的文粗漏畝件夾下
你可以在你的demo裡面新建一個文件夾名為pridemo,
在pridemo裡面新建一個hello.pri的文件 空的即可
然後再你的工岩森程裡面的demo.pro裡面寫上
include (./prodemo/hello.pri) 中間注意空格
然後運行一下,.pri文件就會自動導入到你的工程下;
❺ Qt - Quick控制項配置文件(qtquickcontrols2.conf)
Qt Quick Controls支持一個特殊的配置文件 qtquickcontrols2.conf ,該文件內置於應用程序的資源中。
配置文件可以指定首選樣式和某些樣式特定的屬性。下面的示例指定首選樣式為 Material樣式 。此外,當應用程序以「材質」樣式運行時,其主題為淺色,強調色和原色分別為藍綠色和藍灰色。但是,如果應用程序改用 通用樣式 運行,則強調色為紅色,並根據系統主題色選擇適當的主題。
可以使用 QT_QUICK_CONTROLS_CONF 環境變數為配置文件指定自定義位置。
可以 Controls 在配置文件的一部分中指定以下值:
下表在配置文件的一部分中列出了可用於配置 Imagine樣式 的值 Imagine :
例如,要指定存儲在 資源系統 的目錄的路徑:
要指定本地目錄的相對路徑:
注意: 由於技術限制,如果路徑相對於文件 qtquickcontrols2.conf ,則不應將其命名為 「 imagine」 。
下表在配置文件的一部分中列出了可用於配置 材料樣式 的值 Material :
下表在配置文件的一部分中列出了可用於配置 通用樣式的 值 Universal :
可以在配置文件中每個樣式部分的子組中指定默認 字體 Font 。 Font 可以通過兩種替代方式定義該子組:
支持的字體屬性:
可以在配置文件中每個樣式部分的子組中指定默認 調色板 Palette 。 Palette 可以通過兩種替代方式定義該子組:
要麼:
有關支持的屬性的完整列表,請參見 調色板QML基本類型 。
為了使Qt Quick Controls可以找到配置文件,必須使用 The Qt Resource System 將其內置到應用程序的資源中。這是一個示例 .qrc 文件:
注意: Qt Quick Controls使用文件選擇器來載入配置文件。可以為不同的平台和語言環境提供不同的配置文件。有關更多詳細信息,請參見 QFileSelector 文檔。
最後, .qrc 必須在應用程序的 .pro 文件中列出該文件,以便構建系統知道該文件。例如:
❻ qt中怎麼添加config.h
yes,表示該選項默認選中。
no,表示該選項默認掘核沖不選中。
auto,應當是系統會自動檢測是否添加該選項吧。
那可以通過 --xxx=no或者-xxx=yes來進行手動配置氏檔。例如:-qt-freetype <=> --freetype=qt;-no-openssl <=> --openssl=no
變數配置方法: -VAR=VALUE的形式。
1、安裝選項
-prefix: 指定部署目錄,默認路徑為 /usr/local/Qt-$QT_VERSION 。
-extprefix: 指定安裝目錄,如主機上所示判殲,[SYSROOT/PREFIX]。
-hostprefix: 指定運行在本主機上的構建工具的安裝目錄,如果不指定則使用當前目錄。
-external-hostbindir: 指定為這台機器構建的Qt工具路徑,當-platform和當前系統不匹配時使用,例如:創建交叉編譯。
可以使用下面選項來對安裝目錄進行微調,請注意,所有目錄除-sysconfdir外,其他的應位於-prefix和-hostprefix下。
-bindir: 可執行文件安裝目錄,[PREFIX/bin]。
-headerdir: 頭文件安裝目錄,[PREFIX/include]。
-libdir: 庫文件安裝目錄,[PREFIX/lib]。
-archdatadir: Arch-dependent 數據安裝目錄,[PREFIX]。
-plugindir: 插件安裝目錄,[ARCHDATADIR/plugins]。
-libexecdir: 輔助程序安裝目錄,[ARCHDATADIR/bin on Windows, ARCHDATADIR/libexec otherwise]
-importdir: QML1 導入安裝目錄,[ARCHDATADIR/imports]。
-qmldir: QML2 導入安裝目錄,[ARCHDATADIR/qml]。
-datadir: Arch-independent 數據安裝目錄,[PREFIX]。
❼ 如何通過Qt 創建一個excel文件
首先,我們打開前文所設置的工程項目。
然後,我們在界面設計窗口,加入一個label用於顯示,要保存的目錄。注意設置下相應的界面布局。
然後,我們在mainwindow.h類中創建一個newExcel的函數,用於實現新建excel的功能。
在對應的cpp文件中,我們要實現newExcel函數功能,首先,按前文的步驟,將application,workbook,worksheet進行賦值並設置。
其中,pApplication->setControl("Excel.Application");用於連接excel控制項。pWorkBooks = pApplication->querySubObject("Workbooks");獲取workbooks指塌物針。
之後,我們需要用QFile先判斷下是否已經存在同名文件,如果沒有,我們通過操作excel組件進行創建。file.exist()是判斷文件是否存在。如果不存在,我們新建一個excel,然後獲取活動的workbook。然後通過dynamicCall調用SaveAs函數進行保存。
然後在蠢物構造函數中調用newExcel,我們可以創建一個名字為fileName的excel文件了。
程序運行以後,會彈出保存文件的對話框,在其中選擇要保存的excel文件名,點擊保存之後,會在你選擇的路徑中創建一個excel文件。
但是,當我們准備刪除此文件的時候,會無法完成,這是因為,我們程序中使用pApplication操作excel的函數並沒有團檔液關閉。
9
我們可以在源文件中添加以下代碼關閉調用。這樣就可以刪除了。
❽ 如何設置Qt中的build settings
在Windows操作系統中,大多把配置文件信息寫在注冊表當中,或寫在*.ini文件中,對於這兩種操作都有相應的Windows API函數,在以前的文章中都提及過,這里就不多說了~在Qt中,提供了一個相應的配置文件的類QSetting,使用QSetting類,可以將用戶設置以及應用程序的設置輕松存儲在磁碟中。QSettings::Scope(配置存儲范圍)分為UserScope、SystemScope。
QSettings::UserScope:用戶環境,設置在當前用戶的特定位置中。
QSettings::SystemScope:系統環境,設置在全局型,所有用戶均可獲得。以下是對應QSettings::Format和QSettings::Scope存放的默認路徑位置,其中*表示的是對應的程序名稱:
Platform Format Scope Path
Windows NativeFormat UserScope HKEY_CURRENT_USERSoftware*
SystemScope HKEY_LOCAL_MACHINESoftware*
IniFormat UserScope %APPDATA%*.ini
SystemScope %COMMON_APPDATA%*.ini
Unix NativeFormat UserScope $HOME/.config/*.conf
SystemScope /老隱etc/xdg/*.conf
IniFormat UserScope $HOME/.config/*.ini
SystemScope /etc/xdg/*.ini
Mac OS X NativeFormat UserScope $HOME/Library/Preferences/com.*.plist
SystemScope /Library/Preferences/com.*.plist
IniFormat UserScope $HOME/.config/*.ini
SystemScope /etc/xdg/*.ini
在讀寫時,路徑名必須是"/"而不是"\"等。否則不能讀寫,注意。以Windows XP平台為例,舉倆個例子程序~■、讀寫注冊表
//Format為QSettings::NativeFormat
QSettings settings("HKEY_CURRENT_USER\Software\Microsoft\Office",
QSettings::NativeFormat);
//設置鍵值信息
settings.setValue("11.0/Outlook/Security/DontTrustInstalledFiles", 0);
//獲取鍵值信息
int value = settings.value("11.0/Outlook/Security/DontTrustInstalledFiles").toInt();
對應的值可是bool,double,QString,QStringList,或者是其他QVariant支持的數據類型,也包括注冊過的用戶自定義類型。
刪除設置對應的是settings->remove( const QString & key );■、讀取ini配置文件
先定義下software.ini文橋含返件的格式,比較簡單:敏飢[bolg]
Name = "vic.MINg"
//Format為QSettings::IniFormat
QSettings *setIni=new QSettings ("software", QSettings::IniFormat);
//設置鍵值信息
setIni->beginGroup("bolg");
setIni->setValue("Name", "vic.MINg");
setIni->endGroup();
//獲取鍵值信息
setIni->beginGroup("bolg");
QString resault = setIni->value("Name").toString();
setIni->endGroup();
qDebug()<<resault;
QSetting的應用並不難,但很有用,一些更細致的操作用法,可以參看幫助文檔!可以參照示例:$
❾ qt中彈出配置文件
Qt操作配置文件.ini文件是通過類QSettings來完成的,需要包含頭文件#include 配置文件中存放的是節點和鍵值對,如圖: SENSOR和灶衫ADDRESS是節點,節點下以鍵值對方式存放配置信息
1、寫配置文件://路徑為虧辯雹程序路徑下,文件不存在銷帆會自行創建 QString iniFilePath = QCoreApplication::applicationDirPath() + "/config.ini"; //新建QSettings類,路徑+格式 QSettings settings(iniFilePath,QSettings::IniFormat); //設置編碼,使支持中文 settings.setIniCodec("UTF-8"); //設置配置文件值,「節點 + / + 鍵」,值 settings.setValue("ADDRESS/detail","武漢"); 2、讀取配置文件:QString str = settings.value("ADDRESS/detail").toString();
❿ 如何在Qt中配置OpenGL
1.首先需要去opengl的官網下載glut庫:
2.解壓後,將glut32.lib和glut.lib兩個文件拷貝到qt目錄下的./lib文件夾中;
3.將glut.dll和glut32.dll兩個動態鏈接庫拷貝到C:windowssystem32中;
4.將glut.h文件拷貝到qt目錄下的includeQtOpenGL中,並建立glut文件【內容寫上#include"glut.h"】,保存為沒有後綴名的文件;
5.切換到自己的程序中,在**.pro文件中添加:
LIBS+=-lgut32
LIBS+=-LC:glut
6.在main.cpp中加入「#include<glut>」或者「#include<glut.h>」,這樣就可以使用glut中的函數了,運行效果如下: