帶啟動文字介面的對話方塊程式

2021-10-06 08:02:42 字數 1554 閱讀 5274

(1)新建乙個基於對話方塊的mfc應用程式splashscreentest,刪除對話方塊中原有控制項。

(2)用畫圖程式做乙個,白底黑字,然後加入工程中,資源名idb_bitmap1。

(3)新增乙個對話方塊資源,並為其新增類cdlgwork。

(4)在bool csplashscreentestdlg::oninitdialog()中的末尾新增**如下:

cdc* pdc;

cdc memdc;

cbitmap bitmap;

cbitmap* bmp =

null

; colorref col;

crect rc;

int x, y;

crgn rgn, tmp;

pdc =

getdc()

;getwindowrect

(&rc)

; bitmap.

loadbitmap

(idb_bitmap1)

;//裝載位圖

memdc.

createcompatibledc

(pdc)

; bmp = memdc.

selectobject

(&bitmap)

; rgn.

createrectrgn(0

,0, rc.

width()

, rc.

height()

);//計算得到區域

for(x=

0; x<=rc.

width()

; x++)}

}if(bmp)

centerwindow()

;setwindowrgn

((hrgn)rgn,true)

;//設定窗體為區域的形狀

releasedc

(pdc)

;settimer(1

,2000

,null

);

(5)為csplashscreentestdlg新增計時器函式,並新增**如下:

void csplashscreentestdlg::

ontimer

(uint_ptr nidevent)

引用類cdlgwork檔案,**如下:

#include

"dlgwork.h"

(6)為csplashscreentestdlg新增顯示視窗事件函式wm_showwindow,並新增**如下:

void csplashscreentestdlg::

onshowwindow

(bool bshow, uint nstatus)

(7)儲存並執行工程,可以看到程式啟動的時候會顯示乙個文字提示,然後再出現類為cdlgwork的對話方塊,執行結果如圖所示:

MFC 對話方塊程式 模式對話方塊與非模式對話方塊

一 根據主視窗型別,mfc軟體工程可以分為以下幾種架構模型 例如 記事本和畫筆等。2 mdi multiple document inte ce 多文件介面,乙個主框架視窗下可以同時編輯多份文件。例如 vc 6.0,photoshop等軟體。3 基於對話方塊的軟體模型 主視窗是通過資源管理器,在對話...

建立帶checkbox的對話方塊

unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls type tform1 class tform button1 tbutton pr...

程式中的對話方塊應用(4) 」顏色「對話方塊

tcolordialog元件用於顯示選擇顏色的對話方塊,當使用者選擇乙個顏色並單擊 ok 按鈕後,所選顏色會被儲存到 color 屬性中。1 將 顏色 對話方塊中所選的顏色值應用到元件中示例 colordialog1.execute memo1.text colortostring colordia...