vc 程式啟動畫面

2021-06-05 16:31:38 字數 2169 閱讀 9482

使用啟動畫面一是可以減少等待程式載入過程中的枯燥感(尤其是一些大型程式);二是可以用來顯示軟體名稱和版權等提示資訊。怎樣使用vc++製作應用程式的啟動畫面呢?本文提供四種方法,前三種適用於基於文件的應用程式,第四種適用於基於對話方塊的應用程式。

1.利用元件庫中的splash screen元件實現

開啟vc++的資源編輯器,用滑鼠

右鍵單擊resources資料夾,選擇import命令,插入所製作的點陣圖。如果位圖超過256色,vc會彈出乙個對話方塊,提示位圖已經插入但不能在位圖編輯器中顯示,確定即可。將位圖id改為idb_splash。

(4)新增splash screen控制項

①選擇選單「project」/「add to project」/「conponents and controls」開啟對話方塊,在列表框中雙擊「visual c++ conponents」選項,選擇「splash screen」控制項,然後單擊「insert」。

②確認或修改類名和點陣圖資源id,單擊ok確認。

③編譯、連線,漂亮的啟動畫面就顯示出來了。

(5)如果需要改變啟動畫面的停留時間,就修改settimer()函式的第二個引數,預設是750 毫秒。該函式所在位置:

int csplashwnd::oncreate(lpcreatestruct lpcreatestruct)

2.利用無模式對話方塊顯示啟動畫面

在資源中新建乙個對話方塊,建立對話方塊類csplashdlg

。在對話方塊中新增乙個picture控制項,開啟其「properties」對話方塊,選general,在type下拉列表中選擇bitmap,在imag

e下拉列表中選前面匯入的點陣圖資源id值:idb_splash。

(4)修改對話方塊的顯示效果

①調整對話方塊大小,去掉兩個自動生成的按鈕,並在「properties」的「styles」頁中去掉對title bar的選取;

②選中影象,調整大小使之適應對話方塊的可編輯區,修改其「properties」的「styles」

使之居中。

(5)在cmainframe類的oncreate()函式中新增建立、顯示並銷毀無模式對話方塊的**。

#include 「splashdlg.h」 //加到mainfrm.cpp檔案的標頭檔案呼叫部位

int cmainframe::oncreate(lpcreatestruct lpcreatestruct)

3.通過傳送訊息顯示和銷毀啟動畫面

①重複方法二的步驟1至步驟4。

②使用class wizard為cmainframe類新增訊息響應函式wm_timer。

③修改**,通過傳送wm_timer訊息啟動和銷毀啟動畫面

1)定義對話方塊類的變數

在mainfrm.h檔案頭部新增#include "splashdlg.h",並在cmainfram類的定義中加上公用變數csplashdlg *splash。

2)新增計時器訊息相應函式**

void cmainframe::ontimer(uint nidevent)

else }

3)修改框架生成函式oncreate()

int cmainframe::oncreate(lpcreatestruct lpcreatestruct)

4.製作基於對話方塊的應用程式啟動畫面

(1) 以上幾種方法都不能給基於對話方塊的應用程式做啟動畫面,下面介紹一種方法給基於對話方塊的應用程式做啟動畫面。基於對話方塊的應用程式沒有主框架,因此不能採用前面幾種方法製作啟動畫面。不過我們可以把方法一建立起的啟動畫面檔案移植過來,然後,對程式進行一些修改。

②使用classwizard 新增oncreate() 函式到對話方塊類ccoverdlg中,並修改**#include "splash1.h" //加在coverdlg.cpp檔案的標頭檔案呼叫部位

int ccoverdlg::oncreate(lpcreatestruct lpcreatestruct)

主對話方塊:

dword   winapi   threadproc(lpvoid   lpparam)  

bool cstartpicturedlg::oninitdialog()

bool ccsplashpic::oninitdialog()

void ccsplashpic::onclose()

說明:啟動畫面停留時間的修改同方法一。 

用VC建立程式啟動畫面

最近由於專案需要,要在vc環境下做乙個啟動介面。當時拿到這個任務我想的是直接afxbeginthread一下就行了,後來發現沒這麼簡單。要解決這個問題首先需要了解以下知識點。一 mfc將執行緒分為工作執行緒和使用者介面執行緒。聽名字就應該知道他們的區別在於用途不同,使用者介面是用來建立介面並負責和使...

程式啟動畫面

vc選單欄的 工程 增加到工程 components and controls.單擊 insert 後會顯示確認對話方塊,點選 確認 後,會顯示插入資訊 class name 插入的啟動畫面視窗類的名稱 bitmap resource id 使用的點陣圖資源id 單擊 ok 按鈕後返回compone...

Qt 程式啟動畫面

程式啟動畫面一般用於顯示軟體資訊 名稱 作者 版權等 以及減少程式載入過程中的枯燥感。在qt中,可以通過qsplashscreen類來為應用程式新增乙個啟動畫面,它會在應用程式的主視窗出現前顯示乙個,並且可以在上顯示想要輸出的資訊。下面是乙個簡單的例子 注意1 啟動畫面是通過setpixmap 來指...