新增RichEdit控制項後對話方塊不顯示

2021-07-11 08:03:00 字數 739 閱讀 9666

在對話方塊中新增了乙個richedit控制項,對話方塊就不顯示了

鬱悶,我試圖彈出乙個對話方塊,步驟如下:

1.建立了乙個對話方塊資源的模板

2.雙擊模板建立對應的類

3.包含標頭檔案

4,彈出對話方塊,**如下:

caddtypedlg dlg;

dlg.domodal();

但是,卻無法彈出對話方塊?

其他的對話方塊都可以,但就是這個對話方塊彈不出來,

是vc的毛病?還是其他什麼呢?

後來才發現,是新增了richedit的問題,去掉就行了,但是不是解決方法,於是網上搜了一下,還真有:參考如下資料:

這個問題是同事遇到的,比較有趣的現象:就是他有乙個mfc的對話方塊應用程式,新增了乙個richedit控制項後就不能正常顯示了,現象就是點生成的可執行程式,沒有反應。我上網查閱了下,網上的說法是程式還沒有準備好richedit的編輯,就是還沒有為這個控制項做好準備,解決辦法是手動新增做準備語句,在應用程式類的initinstance函式體內新增以下語句: 

afxinitrichedit(): 

這樣就好了,真是奇怪。

最後看到了ms的解釋,屬於官方的東西,比較正式,帖在這裡。 

不過到底是為什麼會這樣,還是不明白,也不知道mfc內部是如何處理的,不過知道怎麼做就是了。

afxinitrichedit();   

初始化通用控制項即可,initcommoncontrol***或initcommoncontrols皆可

Rich Edit控制項的使用

之前沒有使用過rich edit控制項,以為它的使用方法和edit box一樣。我建了乙個單文件工程a,由a的乙個選單彈出對話方塊b,再由b的乙個按鈕彈出對話方塊c。如下 void b onbutton1 但是單擊對話方塊b的按鈕,對話方塊c一直沒有彈出來.我很納悶.開始我以為是因為對話方塊c的控制...

Rich Edit控制項的使用

之前沒有使用過rich edit控制項,以為它的使用方法和edit box一樣。我建了乙個單文件工程a,由a的乙個選單彈出對話方塊b,再由b的乙個按鈕彈出對話方塊c。如下 void b onbutton1 但是單擊對話方塊b的按鈕,對話方塊c一直沒有彈出來.我很納悶.開始我以為是因為對話方塊c的控制...

RichEdit中新增鏈結

unit unit1 inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls,comctrls,shellapi,richedit type tform1 cla...