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

1.如何正確的得到ComBox的指針

CComboBox *mComb = (CComboBox*)GetDlgItem(IDC_DuanCB);

CComboBox *mComb = (CComboBox*)::GetDlgItem(m_hWnd,IDC_DuanCB);

2.CComboBox控件詳解

CComboBox控件又稱作組合框控件,其有三種形態(tài)可供選擇,1.簡單組合框(Simple)2.下拉組合框(Drop-down)3.下拉列表式組合框(Drop-down list).

CComboBox控件的常用設(shè)置屬性說明:

type屬性:里面一共有三個(gè)選項(xiàng).就是其三種形式, 我們常用的是后兩種形態(tài),其區(qū)別就是Dropdown的編輯區(qū)為可編輯控件,droplist為靜態(tài)控件.

Data屬性:當(dāng)程序初始化的時(shí)候,下拉列表將顯示其屬性里面的內(nèi)容,內(nèi)容用分號(hào)分隔.其屬性只支持后2中形式,

Sort 屬性:對添加到下拉列表框中的數(shù)據(jù)自動(dòng)進(jìn)行排序,假如你不想他改變你的顯示序列,把他設(shè)置成False.

控件是一個(gè)窗口.其基類是為CWnd.所以CComboBox也可以使用CWnd的一些函數(shù),它自己的函數(shù)有30幾種.我寫了一個(gè)示范程序,演示了一些常用的函數(shù),你可以參考其代碼看到其功能.

:m_cbox CComboBox控件的關(guān)聯(lián)變量,m_endEDIT控件的關(guān)聯(lián)變量

1.GetCount() 函數(shù):用以獲得列表框中的選項(xiàng)數(shù)目. int GetCount() const;(此乃函數(shù)原型,我會(huì)列在每條的后面) 下面的例子是程序中各個(gè)按鈕里面的代碼

int i;

CString str;

i=m_cbox.GetCount();

str.Format ("%d",i);

m_end="一共有" str "個(gè)數(shù)據(jù)";

UpdateData(FALSE);

2.GetCurSel() 函數(shù):用以得到用戶選中下拉列表框中數(shù)據(jù)的索引值.返回的值是重0開始的,假如沒有選擇任何選項(xiàng)將會(huì)返回-1 Int GetCurSel() const

int i;

CString str;

i=m_cbox.GetCurSel ();

str.Format ("%d",i 1);

if (i==-1) m_end="你什么都沒有選";

else m_end="你選的是第" str "項(xiàng)";

UpdateData(FALSE);

3.SetCurSel函數(shù):選取列表框中的一個(gè)選項(xiàng),索引從0開始,-1為什么都不選.當(dāng)你需要把列表框中已經(jīng)選取的內(nèi)容清空時(shí)就可以使用這個(gè)函數(shù);

if(m_i<3) m_cbox.SetCurSel (m_i );//m_iint型變量 用以計(jì)數(shù)

else

{

m_cbox.SetCurSel (-1);

m_i=0;

}

4.SetEditSel函數(shù):設(shè)置編輯區(qū)中藍(lán)色選中字段的長度, BOOL SetEditSel( intnStartChar, int nEndChar ); nStartChar是起始的位置,當(dāng)設(shè)置為-1時(shí)為不選擇任何字段,nEndChar是結(jié)束位置.還有一個(gè)對應(yīng)的函數(shù)GetEditSel是取得其位置,在此不詳解.

m_cbox.SetEditSel (3,5);//在編輯框中打入一串?dāng)?shù)字在按此按鈕就能看到效果

//其作用就是選中第3到第5個(gè)字符作為熱點(diǎn)

5.Clear() Cut() Paste() Copy() 這四個(gè)函數(shù)我放在一起說,因?yàn)樗麄兌际轻槍庉嬁蛑羞x定的文字進(jìn)行編輯的函數(shù),很多初學(xué)者很不明白這4個(gè)函數(shù),使用這些函數(shù)沒有作用,其實(shí)不然,這些函數(shù)對于在編輯框中的內(nèi)容不進(jìn)行處理,他真正處理的是你用鼠標(biāo)選中的內(nèi)容,對于Clear()函數(shù)很多書中解釋都是有誤的,很多書中對他的解釋是清除當(dāng)前選中的文本,我認(rèn)為這樣的解釋是有歧異的,真正的解釋是把你剛選中的文本釋放掉,也就是不選,而不是把選中的刪除,真正的刪除選中的文本的函數(shù)是Cut(),Copy()是復(fù)制選中的文本,Paste()是粘貼到光標(biāo)處.其演示就不寫在程序中,有愛好的朋友可以自己試試.

6.LimitText()函數(shù).其作用是限制在編輯框中鍵入的文本長度,BOOL LimitText(int nMaxChars); 當(dāng)nMaxChars0時(shí),不是不能輸入,而是長度最大化為65535字節(jié)

7.GetLBText()函數(shù).其原型為void GetLBText( int nIndex, CString&rString ).nIndex為列表框中數(shù)據(jù)的索引值,rString 為字符串,其作用就是把索引號(hào)為nIndex的數(shù)據(jù)放到rString變量中.與其對應(yīng)的GetLBTextLen(intnIndex)函數(shù)就是得到索引號(hào)為nIndex中數(shù)據(jù)的長度

m_cbox.GetLBText (2,m_end); // GetLBText按鈕

UpdateData(0);

CString str; //GetLBTextLen按鈕

int i=m_cbox.GetLBTextLen (2);

str.Format ("%d",i);

m_end=str;

UpdateData(FALSE);

8.AddString() DeleteString() InsertString() ResetContent() 四個(gè)函數(shù)放在一起,他們都是針對下拉列表框的處理函數(shù), AddString(LPCTSTR lpszString) 是在列表框的尾巴添加一條數(shù)據(jù),參數(shù)為字符串. DeleteString(UINT nIndex)為刪除指定索引為nIndex的數(shù)據(jù). InsertString(int nIndex, LPCTSTR lpszString)在索引nIndex處插入IpszString的內(nèi)容. ResetContent()是清除列表框中所有的內(nèi)容.

9.SetDroppedWidth(UINT nWidth) 函數(shù).用于設(shè)定下拉列表框的最小寬度,當(dāng)下拉列表框中的數(shù)據(jù)很長不能完全顯示時(shí),我們可以使用這個(gè)函數(shù)把列表框的寬度設(shè)置的大些.同樣GetDroppedWidth()是返回列表框的寬度.

以下為總結(jié)了各大論壇中對CCombBox控件使用的問題.并給出了正解.

1.關(guān)于CComboBox在對話框中沒有下拉項(xiàng)目的問題

: 資源編輯器中對話框中CComboBox組件的垂直范圍拉大了下,就看見字體了,看到那個(gè)向下的黑箭頭了嗎,點(diǎn)他下拉,嘿嘿就這么簡單.

2.請問怎樣能讓CCombobox記住用戶的輸入.下次使用時(shí)還有

: 要記住用戶的輸入必須用到文件讀寫,或者把內(nèi)容添加到注冊表中,我會(huì)在以后給出解決辦法.

3. CCOMBOBOX如何使它只讀,不能編輯

: 看了本文的介紹也許你現(xiàn)在知道了, CCOMBOBOX有三種類型的,選擇你需要的吧!

4. 我要讓界面一顯示,就能在Combo框中顯示默認(rèn)的數(shù)據(jù)

: 你要在OnInitDialog里面加上我上面所提到的SetCurSel()函數(shù)就行了.

5. 如何把選好的內(nèi)容賦給變量

: 先給CCOMBOBOX設(shè)置一個(gè)CString關(guān)聯(lián)變量,再添加事件處理函數(shù)CBN_ Selchange.使用UpdateData(FALSE)就行了.

6. CComboBox組合框中,條目的對齊方式是左對齊,能設(shè)置為對中或者右對齊嗎?

: 沒有直接的方法,你必須自己對齊, 比如最大長度是10

posted @ 2008-04-02 18:52 wrh 閱讀(768) | 評論 (0)編輯 收藏

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

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

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

[問題提出]
這兩天大家比較專注在獲取Edit密碼框的密碼.在盜取時(shí),我們?nèi)绾畏婪赌?/span>?

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

[程序?qū)崿F(xiàn)]
方法很簡單,CWnd::DefWindowProc函數(shù)攔截得到的消息(Edit發(fā)的).
建立名為My的對話框工程.建立一個(gè)Edit控件ID=IDC_EDIT1.建一個(gè)新類名為CMyProtectEdit,派生于CEdit.
MyDlg.cpp中聲明全局變量:BOOL g_bIdentity;
BOOL g_bIdentity;

MyProtecEdit.cpp:
extern BOOL g_bIdentity;

響應(yīng)CMyProtectEditDefWindowProc函數(shù):
LRESULT CMyProtectEdit::DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam)
{
// TODO: Add your specialized code here and/or call the base class
// Edit的內(nèi)容獲取必須通過以下兩個(gè)消息之一,不對其采用默認(rèn)的處理:
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
}
即可.找個(gè)程序(盜取)的試試.

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

[問題提出]
SetDlgItemText可以向Edit控件中輸入字符,發(fā)送更新的消息也可是Edit控件顯示與其關(guān)聯(lián)的變量的值,但若是向已有的Edit字符后追加字符,該如何做?
[程序?qū)崿F(xiàn)]
建立名為My的對話框工程,添加一個(gè)Edit和一個(gè)Button控件.EditID=IDC_EDIT1,ButtonID=IDC_BUTTON1.建立和IDC_BUTTON1的響應(yīng)函數(shù):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控件中輸入字符,想追加時(shí)按IDC_BUTTON1按鈕.看看效果.

4.怎樣實(shí)現(xiàn)3D效果?

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

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

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

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

6.Richedit設(shè)置背景圖片的辦法

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

2:設(shè)置了Richedit控件的透明屬性;

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

。綜上所述,即可實(shí)現(xiàn)RichEdit控件的背景圖片效果。

據(jù)此,我還實(shí)現(xiàn)了RichEdit控件背景繪制AVI動(dòng)畫效果。

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

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

實(shí)現(xiàn)步驟:
生成一個(gè)標(biāo)準(zhǔn)的單文檔應(yīng)用程序框架,假設(shè)應(yīng)用程序的名稱為Color。我將利用它的About對話框做示范。在About dialog中添加兩個(gè)Edit control,設(shè)定其IDIDC_EDIT1IDC_EDIT2

第一種方法(對應(yīng)于IDC_EDIT1): 按照標(biāo)準(zhǔn)的Windows編程,由其父窗口的消息處理函數(shù)負(fù)責(zé)處理WM_CTLCOLOR消息。

1. CAboutDlg中添加一個(gè)數(shù)據(jù)成員:HBRUSH m_brMine;
2. 利用向?qū)в成?/span>AboutDlgWM_CTLCOLOR消息,產(chǎn)生函數(shù):HBRUSH CAboutDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
pDCAboutDlg的設(shè)備上下文,pWndAboutDlg中發(fā)送該消息的control指針,nCtlColorControl的類型編碼。對其進(jìn)行如下修改:

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); //設(shè)置紅色的文本
clr = RGB(0,0,0);
pDC->SetBkColor(clr); //設(shè)置黑色的背景
m_brMine = ::CreateSolidBrush(clr);
return m_brMine; //作為約定,返回背景色對應(yīng)的刷子句柄
}
else
{
HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
return hbr;
}
}

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

1.利用向?qū)砑右粋€(gè)新的類:CColorEdit,基類為CEdit;
2.CColorEdit中添加一個(gè)數(shù)據(jù)成員: HBRUSH m_bkBrush;
3.利用向?qū)в成?/span>CColorEdit"=WM_CTLCOLOR"消息,產(chǎn)生函數(shù):

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

對其進(jìn)行如下修改:

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

4.利用向?qū)?/span>IDC_EDIT2生成一個(gè)數(shù)據(jù)成員CColorEdit m_coloredit;
5.在定義CAboutDlgcolor.cpp文件中加入:#include "coloredit.h"

posted @ 2008-04-02 18:51 wrh 閱讀(1250) | 評論 (0)編輯 收藏
僅列出標(biāo)題
共25頁: First 17 18 19 20 21 22 23 24 25 

導(dǎo)航

<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

統(tǒng)計(jì)

常用鏈接

留言簿(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>
            国产精品免费福利| 欧美一区二区在线看| 亚洲你懂的在线视频| 一本色道久久综合亚洲精品小说| 亚洲精品老司机| 亚洲美女黄网| 性8sex亚洲区入口| 久久香蕉国产线看观看av| 欧美成人精品h版在线观看| 最新中文字幕一区二区三区| 日韩视频免费观看高清完整版| 9l视频自拍蝌蚪9l视频成人| 亚洲欧美日韩一区| 老牛国产精品一区的观看方式| 欧美激情在线观看| 国产精自产拍久久久久久| 精品999成人| 亚洲一级免费视频| 久久久久.com| 亚洲免费观看高清完整版在线观看| 亚洲午夜激情网站| 免费久久精品视频| 国产精品视频专区| 亚洲精品系列| 久久久久久久91| 夜夜嗨av一区二区三区四季av | 国产女精品视频网站免费| 国产一区二区福利| 一区二区三区三区在线| 久久久夜夜夜| 亚洲一区二区毛片| 欧美国产日韩亚洲一区| 一区二区三区产品免费精品久久75| 亚洲一区在线播放| 欧美麻豆久久久久久中文| 国产欧美日本一区视频| 99精品欧美一区二区三区综合在线| 欧美一区二区视频在线观看2020| 欧美激情一区二区三区在线| 欧美一级网站| 国产精品夫妻自拍| 亚洲免费激情| 欧美国产先锋| 久久久久一区二区| 国产欧美日韩另类一区| 亚洲一区二区三区在线视频| 亚洲福利在线观看| 久久深夜福利免费观看| 国产亚洲一区在线| 欧美一区在线看| 亚洲欧美日韩国产综合| 欧美日韩在线观看一区二区| 亚洲色诱最新| 免费日韩视频| 亚洲精品久久久久久下一站 | 午夜精品电影| 国产女主播一区二区| 亚洲影院一区| 中文精品视频| 国产精品麻豆va在线播放| 亚洲视频在线观看免费| 亚洲精品视频在线看| 欧美区高清在线| 一本色道精品久久一区二区三区| 亚洲国产高清一区| 欧美日韩在线不卡一区| 亚洲视频在线看| 亚洲日本视频| 国产精品久久亚洲7777| 性久久久久久久久| 欧美与黑人午夜性猛交久久久| 国产亚洲综合在线| 欧美成人激情视频| 欧美巨乳在线观看| 亚洲综合国产| 久久本道综合色狠狠五月| 亚洲电影在线看| 亚洲国产影院| 国产精品久久久亚洲一区| 欧美综合第一页| 久久综合99re88久久爱| 一本久久综合| 亚洲天堂黄色| 精久久久久久| 一本色道**综合亚洲精品蜜桃冫| 国产精品美女久久久| 久久亚洲精品欧美| 欧美理论在线播放| 久久久国产亚洲精品| 欧美好吊妞视频| 国产一区二区三区在线观看精品| 久久精品一区| 欧美大成色www永久网站婷| 亚洲永久精品大片| 久久久久久97三级| 国产精品99久久99久久久二8| 先锋a资源在线看亚洲| 日韩午夜激情电影| 性欧美18~19sex高清播放| 日韩视频一区二区在线观看| 午夜精品久久久久99热蜜桃导演| 亚洲激情成人| 欧美亚洲免费电影| 中文日韩在线| 免费久久精品视频| 国产精品ⅴa在线观看h| 久久精品欧洲| 国产精品久久久久久久久搜平片| 欧美成人一区二区在线| 国产精品一级| 日韩一级欧洲| 亚洲精品国产精品国产自| 久久爱www| 欧美在线不卡| 国产精品成人aaaaa网站| 亚洲国产精品t66y| 精品99视频| 亚洲欧美日韩系列| 亚洲一二三区在线| 欧美日韩国产区一| 亚洲激情一区二区| 亚洲国产日韩一区二区| 久久久久久穴| 老司机午夜精品| 国产美女精品视频免费观看| 一区二区三区国产在线| 一本久道久久综合婷婷鲸鱼| 欧美国产日韩在线| 亚洲电影有码| 亚洲三级电影全部在线观看高清| 理论片一区二区在线| 麻豆九一精品爱看视频在线观看免费| 国产日韩欧美高清| 亚洲欧美综合| 久久久999精品视频| 国产一级揄自揄精品视频| 亚洲欧美在线一区| 久久露脸国产精品| 在线不卡欧美| 免费国产自线拍一欧美视频| 亚洲福利视频网| 中文精品视频| 国产精品伦一区| 亚洲免费中文字幕| 久久久99久久精品女同性| 国产一二三精品| 久久亚洲综合网| 亚洲高清不卡av| 99视频国产精品免费观看| 欧美日韩一区自拍| 午夜久久一区| 欧美成人情趣视频| 一区二区三区成人精品| 欧美亚洲第一区| 亚洲欧美日韩一区二区在线 | 亚洲电影欧美电影有声小说| 亚洲裸体视频| 国产精品久久久久久久久免费樱桃| 亚洲免费在线视频一区 二区| 老司机久久99久久精品播放免费 | 亚洲日本va在线观看| 在线视频你懂得一区| 国产精品免费视频观看| 欧美中文字幕久久| 亚洲国产精品久久久久| 欧美精品七区| 中文av一区特黄| 久久综合久色欧美综合狠狠| 日韩视频免费在线| 国产婷婷色一区二区三区| 免费在线国产精品| 亚洲午夜免费福利视频| 欧美大片一区二区| 欧美在线91| 一区二区三区波多野结衣在线观看| 国产喷白浆一区二区三区| 欧美成人久久| 香蕉乱码成人久久天堂爱免费| 亚洲国产视频直播| 久久精品国产视频| 一区二区高清视频| 激情欧美一区二区三区在线观看| 欧美日韩免费观看一区三区| 久久久99免费视频| 亚洲欧美久久久| 亚洲破处大片| 欧美99在线视频观看| 午夜精品国产更新| 亚洲精品视频在线观看免费| 狠狠色丁香婷婷综合久久片| 欧美午夜精品久久久久久浪潮| 久久久亚洲精品一区二区三区 | 国产精品日韩精品欧美在线| 久久嫩草精品久久久精品| 亚洲一区二区三区777| 亚洲国产欧美不卡在线观看| 久久久五月婷婷| 欧美在线综合| 欧美一区二区三区日韩| 亚洲午夜精品一区二区|