開發環境vs2010+qt4.8.6
專案目錄樹:
sourcefiles:
- main.cpp
- usersqlclass.h
- usersqlclass.cpp
sql:
- sql_inte***ce.h
- sql_inte***ce.cpp
main.cpp
#include
#include
int main(int argc,char *argv)
資料庫類sqlclass的宣告形式:
sql_inte***ce.h
class sqlclass : publc qobject
;
類sqlclass的實現
sql_inte***ce.cpp
sqlclass::sqlclass(qobject* parent):qobject(parent)
bool sqlclass::opendatabase()
db->sethostname("***,xx,xx,xx");
db->setdatabasename("driver=;server=xx.xx.xx.xx;database=***");
db->setusername("***");
db->setpassword("123456"):
if( !db->open() )
return
true;}
sqlclass::~sqlclass()
usersqlclass類的宣告形式。
usersqlclass.h
class usersqlclass : public qmainwindow
;
usersqlclass的建構函式:
usersqlclass.cpp
usersqlclass::usersqlclass(qwidget *parent,qt::wflags flags) : qmainwindow(parent,flags)
usersqlclass::~usersqlclass()
這裡很多都是比較基礎的知識點,不做過多解釋。
主要講解的是sqlclass類的宣告。
qobject是所有qt類的基類,所有如果像需要用到訊號槽的最好是需要繼承qobject,而類sqlclass宣告裡的q_object巨集也是必須的。
還要注意的是sqlclass的析構函式使 虛析構函式,這樣可以在釋放的時候向下釋放,相關知識可查虛析構函式。
原本這裡的db設定是打算寫成傳參函式的,這樣的擴充套件性會比較強一點,而這裡主要用於做簡單例子也就免去了。
還有最最總要的一點是將,qsqldatabase db,sqlclass mainsql宣告為指標,這裡可保證是對同一次鏈結物件進行操作。物件導向的思想就是將一次鏈結視為乙個物件,這個物件就可以執行sql操作。
Qt將QML檔案封裝成動態庫
參考 只要看上面的那個鏈結就好,對方寫得十分詳細了。我這裡只是做一些補充 主要是為了方便我日後查詢 1.他的文章裡面提到的 0x02 1 新增自定義.qml元件 這裡沒有具體說怎麼新增。其實需要我們先增加乙個qt資源檔案,然後再在檔案裡面新增。2.假如你匯出的qml檔案a中引用了你自己新建的qml檔...
QT中資料庫單例類的封裝
首先咱們理解一下什麼是單例模式 單例模式,屬於建立型別的一種常用的軟體設計模式。通過單例模式的方法建立的類在當前程序中只有乙個例項 根據需要,也有可能乙個執行緒中屬於單例,如 僅執行緒上下文內使用同乙個例項 簡單來說 1.確保乙個類只能建立乙個例項 2.能夠提供乙個訪問類物件的全域性指標 為滿足以上...
資料庫訪問封裝
專案名稱 dbacess 專案目的 封裝jdbc訪問 專案使用 任意,保障所有包開源 專案當前功能 1.訪問資料庫方法封裝 2.資料庫連線池採用hikaricp 3.配置檔案遵守hikaricp的配置,設定根目錄,以此保障功能多資料庫,多源。4.擴充套件驅動路徑,採用自定義載入器載入驅動 5.新資料...