国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
IP地址輸入框
userphoto

2007.04.05

關注

在很多Windows應用程序上我們都會用到類似Windows自帶的IP地址輸入框,如下圖所示:

在.NET中,有很多開發(fā)人員的做法是通過用普通的文本框加正則表達式的方式來實現(xiàn)這一功能或者干脆就使用文本框,但是其在方便性和實用性上很難跟MS系統(tǒng)自己的IP地址框相比。本文章實現(xiàn)的就是一個從Windows中“借”來個一個文本輸入框,代碼如下:

 

Imports System.Runtime.InteropServices

Namespace Forms
    
Public Class IPTextBox
        
Inherits System.Windows.Forms.Control

組件設計器生成的代碼

        
Protected Overrides Sub OnPaint(ByVal pe As System.Windows.Forms.PaintEventArgs)
            
MyBase.OnPaint(pe)

            
在此添加自定義繪畫代碼
        End Sub


        
Private Sub IPTextBox_SizeChanged(ByVal sender As ObjectByVal e As System.EventArgs) Handles MyBase.SizeChanged
            
If CtlHwnd.Equals(IntPtr.Zero) = False Then User32.SetWindowPos(CtlHwnd, 000Me.Width, Me.Height, &H22)
        
End Sub


        
Private CtlHwnd As IntPtr

Propertys

Functions

    
End Class


    
Public Class User32

        
<DllImport("user32", EntryPoint:="CreateWindowExA", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function CreateWindowEx(ByVal dwExStyle As Integer<MarshalAs(UnmanagedType.VBByRefStr)> ByRef lpClassName As String<MarshalAs(UnmanagedType.VBByRefStr)> ByRef lpWindowName As StringByVal dwStyle As IntegerByVal x As IntegerByVal y As IntegerByVal nWidth As IntegerByVal nHeight As IntegerByVal hWndParent As IntPtr, ByVal hMenu As IntPtr, ByVal hInstance As IntPtr, ByVal lpParam As IntPtr) As IntPtr
        
End Function


        
<DllImport("user32", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function DestroyWindow(ByVal hwnd As IntPtr) As Integer
        
End Function


        
<DllImport("user32", EntryPoint:="SendMessageA", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function SendMessage(ByVal hwnd As IntegerByVal wMsg As IntegerByVal wParam As IntegerByVal lParam As IntegerAs Integer
        
End Function

        
<DllImport("user32", EntryPoint:="SendMessageA", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function SendMessage(ByVal hwnd As IntPtr, ByVal wMsg As IntegerByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
        
End Function


        
<DllImport("user32", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function SetWindowPos(ByVal hwnd As IntPtr, ByVal hWndInsertAfter As IntegerByVal x As IntegerByVal y As IntegerByVal cx As IntegerByVal cy As IntegerByVal wFlags As IntegerAs Integer
        
End Function


        
<DllImport("comctl32.dll", CharSet:=CharSet.Ansi, SetLastError:=True, ExactSpelling:=True)> _
        
Public Shared Function InitCommonControlsEx(ByRef TLPINITCOMMONCONTROLSEX As Structures.InitCommonControls) As Integer
        
End Function


        
 Fields
        Public Const MENU_CLASS As String = "#32768"

        
 Nested Types
        Public Enum Constants
            ICC_INTERNET_CLASSES 
= 2048
            IPM_CLEARADDRESS 
= 1124
            IPM_GETADDRESS 
= 1126
            IPM_SETADDRESS 
= 1125
            WS_CHILD 
= 1073741824
            WS_TABSTOP 
= 65536
            WS_VISIBLE 
= 268435456
        
End Enum


        
Public Class Structures

            
<StructLayout(LayoutKind.Sequential)> _
            
Public Structure InitCommonControls
                
 Fields
                Public dwICC As Integer
                
Public dwSize As Integer
            
End Structure


            
<StructLayout(LayoutKind.Sequential)> _
            
Public Structure WINDOWPOS
                
 Fields
                Public cx As Integer
                
Public cy As Integer
                
Public flags As Integer
                
Public hWnd As IntPtr
                
Public hWndInsertAfter As IntPtr
                
Public x As Integer
                
Public y As Integer
            
End Structure

        
End Class


        
Public Enum WindowsMessages
            WM_SETFONT 
= 48
        
End Enum


    
End Class


End Namespace



本站僅提供存儲服務,所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
獲取窗體句柄并操縱它
VB.NET自動操作其他程序(2)
修改http請求文件為本地文件的一種方法:hook InternetReadFile 和 HttpOpenRequest
vb.net 枚舉電腦上的TCP,UDP連接
如何使用Windows Media Encoder抓取攝象頭視頻并且保存為視頻文件??
VB.NET實現(xiàn)Smartphone進程啟動_Windows Mobile_移動開發(fā)_軟件...
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服