专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > VB Dotnet

请教怎么将一个控件的父窗口设为桌面

发布时间:2011-06-23 14:43:23 文章来源:www.iduyao.cn 采编人员:星星草
请问如何将一个控件的父窗口设为桌面
在vb.net中可以用下面的代码将一个控件设置为另一个控件的子控件
PictureBox1.Parent = PictureBox2.Parent

但是如果是要将其设置为桌面窗口的子控件应该桌面做呢?

PictureBox1.Parent =???
------最佳解决方案--------------------
 [DllImport("user32.dll")]  
  public extern static IntPtr SetParent(IntPtr hChild, IntPtr hParent);
------其他解决方案--------------------
这个API我也试过了 没反应

引用:
[DllImport("user32.dll")]  
  public extern static IntPtr SetParent(IntPtr hChild, IntPtr hParent);

------其他解决方案--------------------
额 重写了一遍  又有反应了   看来还是用api把  谢谢:)
------其他解决方案--------------------
楼上正解

    Private Declare Function GetDesktopWindow Lib "user32.dll" () As IntPtr
    Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As Int32


    Dim hdesk As IntPtr = GetDesktopWindow
        Dim ret As Int32 = SetParent(PictureBox1.Handle, hdesk)



本来以为可以把桌面直接转为控件,结果不行。想想也是桌面怎么说也不是net框架中的控件
       Dim ctl As Control = Control.FromHandle(GetDesktopWindow)
        If ctl IsNot Nothing Then
            PictureBox1.Parent = ctl
        End If
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: