青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

積累的VC編程小技巧之編輯框

1.如何讓對話框中的編輯框接收對話框的消息

////////////////////////////////////////////////
// 如何讓對話框中的CEdit控件類接收對話框的消息
////////////////////////////////////////////////
1、在對話框中增加一個ID IDC_EDIT1CEdit1控件
2、通過ClassWizard 生成一個基于CEdit的新類CMyEdit,
CMyEdit m_wndEdit;
3、在對話框OnInitDialog()中,將m_wndEdit子類化,使其能夠接受對話框的消息。
m_wndEdit.SubclassDlgItem (IDC_EDIT1,this);

2.如何防止密碼被非法獲取?

[問題提出]
這兩天大家比較專注在獲取Edit密碼框的密碼.在盜取時,我們如何防范呢?

[解決方法]
此方法針對于通過SendMessage向此窗口發送WM_GETTEXTEM_GETLINE消息來取得密碼.跟我來.

[程序實現]
方法很簡單,CWnd::DefWindowProc函數攔截得到的消息(Edit發的).
建立名為My的對話框工程.建立一個Edit控件ID=IDC_EDIT1.建一個新類名為CMyProtectEdit,派生于CEdit.
MyDlg.cpp中聲明全局變量:BOOL g_bIdentity;
BOOL g_bIdentity;

MyProtecEdit.cpp:
extern BOOL g_bIdentity;

響應CMyProtectEditDefWindowProc函數:
LRESULT CMyProtectEdit::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
// TODO: Add your specialized code here and/or call the base class
// Edit的內容獲取必須通過以下兩個消息之一,不對其采用默認的處理:
if(( message == WM_GETTEXT) || ( message == EM_GETLINE))
{ //檢查是否為合法
if(!g_bIdentity)
{ //非法獲取,顯示非法信息
AfxMessageBox(_T("不能讓你看我的密碼,:( !"));
return 0;
)
g_bIdentity = FALSE;//合法獲取
}

return CEdit::DefWindowProc(message, wParam, lParam);
}

然后在MyDlg.cpp
void CMyDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CGetPasswordDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
if( pDX->m_bSaveAndValidate)
{
g_bIdentity = TRUE;
}
//}}AFX_DATA_MAP
}
即可.找個程序(盜取)的試試.

3.如何在編輯控件中以追加的方式添入字符?

[問題提出]
SetDlgItemText可以向Edit控件中輸入字符,發送更新的消息也可是Edit控件顯示與其關聯的變量的值,但若是向已有的Edit字符后追加字符,該如何做?
[程序實現]
建立名為My的對話框工程,添加一個Edit和一個Button控件.EditID=IDC_EDIT1,ButtonID=IDC_BUTTON1.建立和IDC_BUTTON1的響應函數:OnButton1()
void CMyDlg::OnButton1()
{
CString pText="你好";
CEdit *m_Edit=(CEdit *)GetDlgItem(IDC_EDIT1);
int nLen=m_Edit->GetWindowTextLength();
m_Edit->SetFocus();
m_Edit->SetSel(nLen, nLen);
m_Edit->ReplaceSel(pText);
}
Edit控件中輸入字符,想追加時按IDC_BUTTON1按鈕.看看效果.

4.怎樣實現3D效果?

在對話框中怎樣實現EditListboxes控件的3D效果?(環境95/NT VC5.0)

1). 使用帶WS_EX_CLIENTEDGE標志的::CreateWindowEx來替換::CreateWindow 或者用CWnd::CreateEx替換CWnd::Create.
2).在建立控件之后,調用ModifyStyleEx(0, WS_EX_CLIENTEDGE).

5.RichEdit加入后,對話框打不開

Dialog(FormView中打開)中加入CRichEdit控件后,這個dialog 為什么打不開如何處理?
[解決方法]
在函數:InitInstance的第一句加入AfxInitRichEdit();

6.Richedit設置背景圖片的辦法

1:繼續CRichEditCtrl::OnEraseBkgnd(CDC* pDC)消息事件中,給Richedit控件繪制上背景圖片:m_bmpBackground.DrawDIB(pDC, 0, 0, rc.Width(), rc.Height());當然也可以通過subclass richedit window之后,在回調函數中處理WM_ERASEBKGND消息。

2:設置了Richedit控件的透明屬性;

3:依照kenwhale所說的,HookGDI32.DLL中的ExtTextOut函數,將RichEdittext-output options去除ETO_OPAQUE style

。綜上所述,即可實現RichEdit控件的背景圖片效果。

據此,我還實現了RichEdit控件背景繪制AVI動畫效果。

7.改變編輯框的背景色(WM_CTLCOLOR消息)

首先要明白:WM_CTLCOLOR是一個由控制(Control)發送給它父窗口的通知消息(Notification message)

實現步驟:
生成一個標準的單文檔應用程序框架,假設應用程序的名稱為Color。我將利用它的About對話框做示范。在About dialog中添加兩個Edit control,設定其IDIDC_EDIT1IDC_EDIT2

第一種方法(對應于IDC_EDIT1): 按照標準的Windows編程,由其父窗口的消息處理函數負責處理WM_CTLCOLOR消息。

1. CAboutDlg中添加一個數據成員:HBRUSH m_brMine;
2. 利用向導映射AboutDlgWM_CTLCOLOR消息,產生函數:HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
pDCAboutDlg的設備上下文,pWndAboutDlg中發送該消息的control指針,nCtlColorControl的類型編碼。對其進行如下修改:

HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
if ((pWnd->GetDlgCtrlID() == IDC_EDIT1) && (nCtlColor == CTLCOLOR_EDIT))
{
COLORREF clr = RGB(255,0,0);
pDC->SetTextColor(clr); //設置紅色的文本
clr = RGB(0,0,0);
pDC->SetBkColor(clr); //設置黑色的背景
m_brMine = ::CreateSolidBrush(clr);
return m_brMine; //作為約定,返回背景色對應的刷子句柄
}
else
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
return hbr;
}
}

第二種方法(對應于IDC_EDIT2):
利用MFC 4.0的新特性: Message reflection

1.利用向導添加一個新的類:CColorEdit,基類為CEdit;
2.CColorEdit中添加一個數據成員: HBRUSH m_bkBrush;
3.利用向導映射CColorEdit"=WM_CTLCOLOR"消息,產生函數:

HBRUSH CColorEdit::CtlColor(CDC* pDC, UINT nCtlColor);

對其進行如下修改:

HBRUSH CColorEdit::CtlColor(CDC* pDC, UINT nCtlColor)
{
COLORREF clr = RGB(0,0,0);
pDC->SetTextColor(clr); //設置黑色的文本
clr = RGB(255,0,0);
pDC->SetBkColor(clr); //設置紅色的背景
m_bkBrush = ::CreateSolidBrush(clr);
return m_bkBrush; //作為約定,返回背景色對應的刷子句柄
}

4.利用向導為IDC_EDIT2生成一個數據成員CColorEdit m_coloredit;
5.在定義CAboutDlgcolor.cpp文件中加入:#include "coloredit.h"

posted on 2008-04-02 18:51 wrh 閱讀(1253) 評論(0)  編輯 收藏 引用


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


導航

<2010年9月>
2930311234
567891011
12131415161718
19202122232425
262728293012
3456789

統計

常用鏈接

留言簿(19)

隨筆檔案

文章檔案

收藏夾

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            日韩天堂av| 亚洲精品黄色| 欧美精品黄色| 欧美了一区在线观看| 亚洲国产欧美日韩另类综合| 亚洲自拍偷拍福利| 亚洲尤物在线| 久久久久九九九九| 欧美mv日韩mv国产网站app| 欧美va天堂| 欧美日韩精品免费看| 欧美性猛交xxxx免费看久久久| 欧美日韩一区二区三区| 国产精品亚洲激情| 在线不卡中文字幕播放| 亚洲免费高清| 欧美一区二区三区在线| 嫩草影视亚洲| 亚洲在线电影| 欧美国产一区在线| 国产日本欧洲亚洲| 亚洲免费高清| 久久影音先锋| 9国产精品视频| 欧美伊人久久| 欧美日韩视频一区二区| 国产综合视频在线观看| 亚洲午夜羞羞片| 你懂的成人av| 欧美一区二区三区在线观看视频| 男人天堂欧美日韩| 国产一区在线观看视频| 亚洲视频久久| 欧美激情2020午夜免费观看| 亚洲男女毛片无遮挡| 欧美激情亚洲一区| 在线观看一区欧美| 久久精品国产2020观看福利| 亚洲精选一区| 欧美 亚欧 日韩视频在线| 国产视频一区在线| 午夜精品福利电影| 亚洲精品一区二区在线| 麻豆乱码国产一区二区三区| 国产日本精品| 欧美在线短视频| 亚洲一区亚洲二区| 欧美日韩视频第一区| 日韩一二在线观看| 亚洲电影免费观看高清完整版| av成人老司机| 欧美日韩精品免费观看视频| 日韩网站在线| 亚洲三级观看| 欧美久久精品午夜青青大伊人| 亚洲第一狼人社区| 欧美成人免费观看| 久久这里只有| 亚洲片在线观看| 亚洲高清在线观看一区| 欧美顶级少妇做爰| 99精品视频免费| 亚洲精品黄色| 一色屋精品视频在线看| 久久精品国产第一区二区三区| 亚洲香蕉视频| 国产无一区二区| 欧美在线免费观看| 欧美一区二区免费观在线| 国产有码一区二区| 免费在线看成人av| 麻豆精品在线视频| 亚洲精品中文字幕有码专区| 亚洲人成在线观看| 欧美天天综合网| 欧美伊人久久大香线蕉综合69| 午夜久久tv| 伊人婷婷欧美激情| 亚洲国产天堂久久综合网| 欧美人妖在线观看| 欧美亚洲综合在线| 久久久精彩视频| 日韩午夜在线播放| 亚洲综合色丁香婷婷六月图片| 国产视频在线观看一区| 欧美激情第3页| 国产精品高潮呻吟久久| 久久久久久噜噜噜久久久精品 | 亚洲二区三区四区| 亚洲国产精品一区二区www在线| 久久一区二区三区av| 99精品国产热久久91蜜凸| 欧美视频在线观看 亚洲欧| 在线视频观看日韩| 午夜一区二区三区在线观看 | 久久国产婷婷国产香蕉| 欧美影院成年免费版| 亚洲精品一区二区三区99| 中文av一区特黄| 永久免费视频成人| 一区二区日韩欧美| 亚洲国产精品成人综合| 亚洲视频在线观看一区| 亚洲国产老妈| 午夜免费日韩视频| 在线中文字幕日韩| 美女国产精品| 久久精精品视频| 欧美日韩一区二区免费视频| 久久永久免费| 国产精品久久久久久久7电影 | 欧美成人黑人xx视频免费观看| 欧美人与性动交cc0o| 欧美xxx在线观看| 国产亚洲成av人在线观看导航 | 久久久久久网| 欧美电影电视剧在线观看| 亚洲男人的天堂在线| 亚洲精品韩国| 久久天天狠狠| 久久深夜福利免费观看| 国产精品麻豆成人av电影艾秋| 最新国产乱人伦偷精品免费网站| 国产视频综合在线| 亚洲专区一区| 午夜久久福利| 国产精品草草| 亚洲作爱视频| 亚洲一区二区三区在线观看视频| 欧美电影专区| 亚洲黄色av一区| 亚洲人体大胆视频| 欧美成人免费在线视频| 亚洲大胆视频| 亚洲日本成人女熟在线观看| 久久久久九九视频| 欧美 日韩 国产精品免费观看| 国模精品一区二区三区| 欧美在线观看视频| 免费人成精品欧美精品| 亚洲黄色免费网站| 欧美激情精品久久久| 亚洲精品一二三| 亚洲视频一区二区| 国产麻豆日韩| 久久久精品一区二区三区| 免费成人性网站| 亚洲看片免费| 国产精品国产亚洲精品看不卡15| 亚洲一区二区三区在线观看视频| 欧美一级大片在线观看| 国产日韩成人精品| 久久久免费观看视频| 欧美国产欧美综合 | 亚洲三级性片| 欧美日韩在线精品一区二区三区| 亚洲另类黄色| 欧美与黑人午夜性猛交久久久| 国产亚洲一区二区三区| 老司机精品视频一区二区三区| 亚洲国产欧美日韩精品| 亚洲综合精品自拍| 精品二区视频| 欧美日韩精品一区| 午夜国产不卡在线观看视频| 久久人人九九| 99视频精品全部免费在线| 国产精品中文字幕在线观看| 久久久久久久91| 99日韩精品| 免费久久99精品国产自| 一区二区三区高清视频在线观看| 国产精品视频精品| 免费毛片一区二区三区久久久| 夜夜嗨av色综合久久久综合网| 久久久久88色偷偷免费| 99ri日韩精品视频| 国产一区亚洲| 国产精品久久久久aaaa樱花| 裸体女人亚洲精品一区| 亚洲在线视频网站| 亚洲国产精品成人久久综合一区| 午夜精品999| 一区二区免费在线观看| 激情五月婷婷综合| 国产精品一区二区欧美| 国产精品免费视频xxxx| 欧美午夜理伦三级在线观看| 久久国产高清| 亚洲影音先锋| 99av国产精品欲麻豆| 老司机成人网| 欧美一区二区在线观看| 99热免费精品在线观看| 精品动漫一区二区| 国产一区二区三区在线免费观看| 欧美午夜不卡视频| 欧美久久综合| 欧美激情一区二区在线 | 久久国产视频网|