程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> VC >> vc教程 >> 使用Windows系統提供的IP控件

使用Windows系統提供的IP控件

編輯:vc教程

在網絡程序中,我們常常碰到需要用戶輸入IP地址的情況。然而C++ Builder並沒有為我們提供可以用於輸入IP串的控件,於是我們只好用TEdit控件(單行文本框)來接受用戶輸入的IP串。但是,使用TEdit來輸入IP串並不是一個好的主意,因為處理起來非常不方便。事實上,在我們的身旁有一個專門用來輸入IP串的Windows控件,就象鏈接屬性中, Internet 協議 (TCP/IP) 屬性中輸入IP的控件。IP控件會拒絕非法的IP串(在每個部分只能輸入0~255之間的數字);它讓你可以輕松地獲取控件中的IP串所對應的IP值(32位整數),這省去了IP串和IP值之間相互轉換的麻煩;此外,你還能限制IP控件中所能輸入的IP的范圍。在本文中,我將向大家介紹如何在我們的C++ Builder程序中使用Windows的IP控件。

Windows中有兩個非常重要的動態聯結庫:commctrl.dll和comctl32.dll,它們是Windows的自定義控制庫(Windows Common Controls)。自定義控制庫中包含了許多常用的Windows控件,如Statusbar,Coolbar,HotKey等;在C++ Builder中,這些控件大多數都已被包裝成可視化控件了。在Microsoft推出Internet Explorer 3之後,自定義控制庫中新增了一些控件,其中就包括Windows的IP控件(IP Address edit control)。

●初始化Windows自定義控制庫●

Windows提供了兩個API函數,InitCommonControls和InitCommonControlsEx,用來初始化自定義控制庫。從名字我們不難看出這兩個API函數的關系:後者是前者的增強。如果你希望在程序中使用IP控件,你必須用InitCommonControlsEx來完成對自定義控制庫以及類的初始化。函數InitCommonControlsEx的原型如下:

typedef struct tagINITCOMMONCONTROLSEX {

DWORD dwSize;       // size of this structure

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved