dfgs 发表于 2007-10-16 22:05:00

.net中如何使用setparent?

<p>以前在VB中,使用API函数setparent可以将CAD嵌入VB窗体中,或将VB窗体嵌入CAD的窗体中,但在.net2003或2005中,这样做就要出错。甚至于两个VB.net窗体使用该函数也不行。错误提示如图,当然,.NET中两个窗体之间设置父子窗体有新的用法,但.NET窗体与CAD窗体之间设置就麻烦大了。请各位高手指教。谢谢!</p><p>&nbsp;</p><img src="file:///c:/未命名.jpg" border="0" alt=""/>

nigma 发表于 2007-10-19 16:40:00

看不到图片!

pyeye 发表于 2008-7-18 17:54:00

<p>是啊,我也遇到了这个问题,主要是VB.net中没有hwnd这个属性,用handle怎么也不行。</p>

pyeye 发表于 2008-7-22 09:29:00

希望得到帮助!

dfgs 发表于 2008-7-22 23:29:00

<p>本人经过大量试验找出了两种解决办法:</p><p>1、.net的正宗用法:</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Me.Parent = Myc<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Me.TopMost = True</p><p>(其中me是当前窗体,myc是CAD的application)</p><p></p><p>2、VB6的API函数setparent (我认为这一方法最不可思议,函数也能改)</p><p>Declare Function SetParent Lib "user32" Alias "SetParent" (ByVal hWndChild As Long, ByVal hWndNewParent As Long) As Long</p><p>这个申明函数改一下:</p><p>Declare Function SetParent Lib "user32" Alias "SetParent" (ByVal hWndChild As integer, ByVal hWndNewParent As Long) As Long</p>

wei855198 发表于 2010-6-6 16:05:00

<p>唉,多年后能看到你的帖子,顶。顺便学习了。</p>
页: [1]
查看完整版本: .net中如何使用setparent?