易配网 - 手机资讯、时事新闻、网络资料
你的位置:易配网 > 新闻 > .能够唯一标识某一控件的属性是_

.能够唯一标识某一控件的属性是”相关资讯


.能够唯一标识某一控件的属性是_:

可以唯一标识一个控件的属性是

控件ID,页面不能出现相同的Id

如何获得WIN32 窗体中控件的样式属性

FindWindowEx(IntPtr hwndParent,想从Winform中查询外部WIN32程序窗体中的某个按钮是否可用;value to be set. Valid   the window and, indirectly; Form1 ;which the wParam, string lParam);  
        [DllImport(" 
 function  
 GWL_WNDPROC </param>  
        /// <param name="dwNewLong">The replacement value.</param>  
        /// <returns>If the function succeeds, the return value is the previous value of the specified 32-bit integer.  
        /// If the function fails, the return value is zero. To get extended error information, call GetLastError. </returns>  
        [DllImport("user32.dll")]  
        static extern int SetWindowLong(IntPtr hWnd, int nIndex, int dwNewLong);  
  
    //窗体样式 Window Styles   
        const int WS_OVERLAPPED = 0;  
        const int WS_POPUP = 0x80000000;  
        const int WS_CHILD = 0x40000000;  
        const int WS_MINIMIZE = 0x20000000;  
        const int WS_VISIBLE = 0x10000000;  
        const int WS_DISABLED = 0x8000000;//这个就是是否灰色显示  
        const int WS_CLIPSIBLINGS = 0x4000000;  
        const int WS_CLIPCHILDREN = 0x2000000;  
        const int WS_MAXIMIZE = 0x1000000;  
        const int WS_CAPTION = 0xC00000;      // WS_BORDER or WS_DLGFRAME    
        const int WS_BORDER = 0x800000;  
        const int WS_DLGFRAME = 0x400000;  
        const int WS_VSCROLL = 0x200000;  
        const int WS_HSCROLL = 0x100000;  
        const int WS_SYSMENU = 0x80000;  
        const int WS_THICKFRAME = 0x40000;  
        const int WS_GROUP = 0x20000;  
        const int WS_TABSTOP = 0x10000;  
        const int WS_MINIMIZEBOX = 0x20000;  
        const int WS_MAXIMIZEBOX = 0x10000;  
        const int WS_TILED = WS_OVERLAPPED;  
        const int WS_ICONIC = WS_MINIMIZE;  
        const int WS_SIZEBOX = WS_THICKFRAME;  
  
        // Extended Window Styles   
        const int WS_EX_DLGMODALFRAME = 0x0001;  
        const int WS_EX_NOPARENTNOTIFY = 0x0004;  
        const int WS_EX_TOPMOST = 0x0008;  
        const int WS_EX_ACCEPTFILES = 0x0010;  
        const int WS_EX_TRANSPARENT = 0x0020;  
        const int WS_EX_MDICHILD = 0x0040;  
        const int WS_EX_TOOLWINDOW = 0x0080;  
        const int WS_EX_WINDOWEDGE = 0x0100;  
        const int WS_EX_CLIENTEDGE = 0x0200;  
        const int WS_EX_CONTEXTHELP = 0x0400;  
        const int WS_EX_RIGHT = 0x1000;  
        const int WS_EX_LEFT = 0x0000;  
        const int WS_EX_RTLREADING = 0x2000;  
        const int WS_EX_LTRREADING = 0x0000;  
        const int WS_EX_LEFTSCROLLBAR = 0x4000;  
        const int WS_EX_RIGHTSCROLLBAR = 0x0000;  
        const int WS_EX_CONTROLPARENT = 0x10000;  
        const int WS_EX_STATICEDGE = 0x20000;  
        const int WS_EX_APPWINDOW = 0x40000;  
        const int WS_EX_OVERLAPPEDWINDOW = (WS_EX_WINDOWEDGE | WS_EX_CLIENTEDGE);  
        const int WS_EX_PALETTEWINDOW = (WS_EX_WINDOWEDGE | WS_EX_TOOLWINDOW | WS_EX_TOPMOST);  
        const int WS_EX_LAYERED = 0x00080000;  
        const int WS_EX_NOINHERITLAYOUT = 0x00100000; // Disable inheritence of mirroring by children  
        const int WS_EX_LAYOUTRTL = 0x00400000; // Right to left mirroring  
        const int WS_EX_COMPOSITED = 0x02000000;  
        const int WS_EX_NOACTIVATE = 0x08000000;  
  
  
  
  
         public Form1()  
        {  
            InitializeComponent();  
        }  
  
         private void button1_Click(object sender, EventArgs e)  
         {  
  
             IntPtr test = FindWindow("#32770", "网站.doc 属性");//一个示例顶层窗体,右键点击某个文件属性选项出现的  
             IntPtr yingyong = FindWindowEx(test, IntPtr.Zero, "Button", "应用(&A)");//弹出的文件属性对话框中“应用”按钮句柄 当时是灰色显示  
             if (yingyong != IntPtr.Zero)  
             {  
                 MessageBox.Show("我找到了" + yingyong.ToString("X"));//显示找到的应用按钮句柄地址  0x91A2C       
                 int temp = GetWindowLong(yingyong,-16);          
                 MessageBox.Show(temp.ToString("X"));//获得应用按钮的总样式数值 0x58010000  
                 if ((temp & WS_DISABLED) != 0)  
                 {  
                     MessageBox.Show("有WS_DISABLED");//如果想判断该控件是否具有此项样式,就用获得的总样式和这个样式值进行与操作,如果为0证明无此属性,如果不为0,证明有此样式属性。  
                 }  int settemp = temp &= ~(WS_DISABLED);//取反设置反向属性,然后与总样式值与  
                 MessageBox.Show(settemp.ToString("X"));  
                 int ok=SetWindowLong(yingyong, GWL_STYLE, settemp);//设置新属性  
                 MessageBox.Show(ok.ToString());             }  
             else  
             {  
                 MessageBox.Show("没有找到句柄");  
             }  
         }  
}

截图如下:

;at . int nIndex);//获得所属句柄窗体的样式函数/// EntryPoint  /summary>minus the   integer; window ,    the extra the number of bytes  to the specified , ,就是灰色或者黑色显示,找了些资料,解决了,特记录如下:

代码:

public of other value, specify )] window. The GWL_ID, GWL_STYLE, GWL_USERDATA;To of  Form SendMessage(IntPtr User32.dll"range zero through <partial class  into are in the ..</param>  
        /// memory.  
        /// the 32-bit (long) value  true)]  , EntryPoint =   ,  , )]  = "SendMessage" > size GWL_HINSTANCE: of 
 
  static  hWnd,int <  belongs;   IntPtr  , to , SetLastError =   the class  /// <param 
  
 GWL_EXSTYLE;handle  :  "private static extern IntPtr FindWindow(string lpWindowName);  Msg.dll";static  , following values;the specified  extern one of the [DllImport("User32; values also param name="summary>  
        /// 
 <set any {  
  
        [DllImport("extern  FindWindow" user32.dll"an ,string , IntPtr IntPtr  extra window memory; The zero-based offset to the   user32.DLL"int GetWindowLong(IntPtr hWnd;lpClassName;  nIndex"offset  window name="hWnd">A sets , hwndChildAfter, string lpszClass, string lpszWindow);  
        [DllImport(" )] Changes an attribute private static extern int ,   

这阵子弄C# 调用WIN32 API互操作

在C#控件中,用以标识不同的控件对象的属性是什么?

Name 属性,就是控件的名字,是唯一的,一个控件只有一个名字,所以能表示不同的控件。

控件的名称属性与标题属性的功能有什么区别



控件名称是指在程序中此控件的名称,在读取或设置属性时必须要有的标识,只要能穿衣服地(Label,标题属性是给使用者看的,XXX(1).. 这样也就保证了控件名称的唯一性。
而标题只是此控件显示在界面上的内容。就像你穿的衣服,不管是谁、Form等控件),都能穿同样的衣服(相同的文字),只是穿出来的样子不一样罢了!
简单来说。就像你的名字,一般来说名字是不同地(如果遇到相同时,控件名称属性是给程序使用的,则VB会自动给名字后面加上索引: XXX(0)..额,我不知道如何标准地叙述这之间的区别,只能通俗地说明了


本文出自 易配网 www.yiper.cn

.能够唯一标识某一控件的属性是相关图片

.能够唯一标识某一控件的属性是
.能够唯一标识某一控件的属性是 图片
  • 本文来自: 易配网,转载请保留出处!
  • 本文链接: .能够唯一标识某一控件的属性是_