• <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>
            Dragon  
            Dragon
            日歷
            <2008年9月>
            31123456
            78910111213
            14151617181920
            21222324252627
            2829301234
            567891011
            統計
            • 隨筆 - 58
            • 文章 - 0
            • 評論 - 55
            • 引用 - 0

            導航

            常用鏈接

            留言簿(3)

            隨筆分類(58)

            隨筆檔案(58)

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

             

            CIPAddressCtrl控件的用法:

            1.通過Create函數手動創建一個IP控件.
            開始時我在OnInitDialog()函數中這樣寫的:
            CIPAddressCtrl IPAddress;
            UINT nID=101;
            IPAddress.Create(WS_CHILD |WS_VISIBLE ,CRect(20,20,300,43),this,nID);
            但運行之后看不到有IP控件出來,后來才發現原來我的IPAddress是一個局部變量,當OnInitDialog()函數返回時,這個變量就撤銷了.
            所以不會有控件出來!!
            只要把CIPAddressCtrl IPAddress;放到頭文件中定義為成員變量就OK了!

            如果上面的Create函數的第一個參數沒有|WS_VISIBLE;我們可以Create函數后加這一句:IPAddress.ShowWindow(SW_SHOW);
            感覺上Create函數在每一個控件里都有,創建的方法也是大同小異了吧!

            2.下面的是我在基于一個對話框的工程中添加一個IP控件中所寫的:
            先獲得控件的指針:
            CIPAddressCtrl * pIP=(CIPAddressCtrl*)GetDlgItem(IDC_IPADDRESS);

            void ClearAddress( );
            這個函數將IP控件里的內容清空.
            BOOL IsBlank( ) const;
            這個函數是當IP控件里一個數字都沒有才返回真的,全為0都返回假,0也是數字!調用ClearAddress( )后剛好可以使IsBlank()反回真.
            測試代碼如下:
            pIP->ClearAddress();
            if(pIP->IsBlank())
            {
                 MessageBox("IP全為空");
            }

             

            int GetAddress(BYTE& nField0, BYTE& nField1, BYTE& nField2, BYTE& nField3);
            int GetAddress(DWORD& dwAddress);
            當控件內容為空時,即沒有數字,連0也沒有,返回0,0,0,0.和控件全為0的情況一樣!
            獲得IP地址:(兩種方法,選其一)


             BYTE nf1,nf2,nf3,nf4;
             pIP->GetAddress(nf1,nf2,nf3,nf4);
             CString str;
             str.Format("%d.%d.%d.%d",nf1,nf2,nf3,nf4);//這里的nf得到的值是IP值了.
             MessageBox(str);
             

             /*
             DWORD dw;
             pIP->GetAddress(dw);
             CString str;
             WORD hiWord=HIWORD(dw);
             WORD loWord=LOWORD(dw);
             BYTE nf1=HIBYTE(hiWord);
             BYTE nf2=LOBYTE(hiWord);
             BYTE nf3=HIBYTE(loWord);
             BYTE nf4=LOBYTE(loWord);
             str.Format("%d.%d.%d.%d",nf1,nf2,nf3,nf4);
             MessageBox(str);
             */


            void SetAddress(BYTE nField0, BYTE nField1, BYTE nField2, BYTE nField3);
            void SetAddress(DWORD dwAddress);
            設置IP地址:(兩種方法,選其一)

                    pIP->SetAddress(127,0,0,1);

             pIP->SetAddress((DWORD)0x7F000001);//這兩行的效果都是一樣的!


            void SetFieldRange(int nField, BYTE nLower, BYTE nUpper);
            設置每一個域的范圍:(nField是0到3的值,nLower和nUpper的范圍都是0到255.可以超出范圍,但控件也還是默認設置回0到255的!

             pIP->SetFieldRange(0,5,127);//設置每一個域的范圍,第一個參數是域的下標,第二和第三個是范圍.
             pIP->SetFieldRange(1,5,127);//當輸入比5少時,如0,當失去輸入焦點時,它會重置為5.
             pIP->SetFieldRange(2,5,127);//當輸入比127大時,如128,它會自動變回127
             pIP->SetFieldRange(3,5,127);


            void SetFieldFocus(WORD nField);
            nField的值為0到3;表示域的下標!該函數是使輸入焦點落在四個域的指定域上;
            這個函數要在消息響應時才能體現出來!
            測試代碼:
            void CTestDlg::OnButton2()
            {
             // TODO: Add your control notification handler code here
             CIPAddressCtrl * pIP=(CIPAddressCtrl*)GetDlgItem(IDC_IPADDRESS);
             pIP->SetFieldFocus(2);
            }

            posted on 2008-09-25 10:28 Dragon 閱讀(5278) 評論(0)  編輯 收藏 引用 所屬分類: VC
             
            Copyright © Dragon Powered by: 博客園 模板提供:滬江博客
            欧美日韩成人精品久久久免费看| 伊人久久大香线蕉综合5g| 久久久久久亚洲Av无码精品专口 | 国产精品热久久毛片| 人妻丰满?V无码久久不卡| 精品国产99久久久久久麻豆 | 久久精品国产清高在天天线| www性久久久com| 久久久久久亚洲精品影院| 九九精品99久久久香蕉| 久久性生大片免费观看性| 久久亚洲AV成人无码国产| 欧美国产精品久久高清| 久久久久久夜精品精品免费啦| 欧美亚洲另类久久综合婷婷| 色8久久人人97超碰香蕉987| 久久毛片免费看一区二区三区| 久久亚洲精品无码aⅴ大香| 久久91亚洲人成电影网站| 婷婷综合久久狠狠色99h| 久久久久久免费视频| 久久人妻少妇嫩草AV无码蜜桃| 久久男人Av资源网站无码软件 | 久久99精品久久久大学生| 久久中文字幕无码专区| 人人狠狠综合久久亚洲88| 77777亚洲午夜久久多喷| 亚洲AV无一区二区三区久久| 久久中文字幕人妻丝袜| 香蕉99久久国产综合精品宅男自 | 婷婷久久五月天| 人妻中文久久久久| 久久久久久国产a免费观看不卡| 久久免费精品一区二区| 精品久久久久久久久午夜福利| 国产色综合久久无码有码| 亚洲中文精品久久久久久不卡| 人妻丰满AV无码久久不卡 | 欧美精品丝袜久久久中文字幕| 久久久久亚洲av毛片大| 久久人人爽人人澡人人高潮AV |