VB.NET窗口置顶在最前面显示的时候不影响目前鼠标焦点.

VB.NET窗口置顶在最前面我设置了TOPMOST属性并且把FORM设置了visible=false到了有事件的时候VISIBLE=T,问题是有事件的时候窗口显示了但是影... VB.NET窗口置顶在最前面我设置了TOPMOST属性并且把FORM设置了visible=false到了有事件的时候VISIBLE=T,问题是有事件的时候窗口显示了但是影响其他的操作,比如打字聊天的时候这个FORM一显示出来焦点就移走了.如何才能解决这个问题呢.要的功能就是能显示出来但是不要影响我目前鼠标焦点.注意是VB.NET不是VB6.0.VB6.0我用API是成功了的. 展开
 我来答
charlybus
2011-07-15 · 超过17用户采纳过TA的回答
知道答主
回答量:42
采纳率:0%
帮助的人:32.2万
展开全部
这是一个关于模态窗口与非模态窗口的问题。
实现非模态窗口也没什么难度
Dim form As New Form1
form.TopMost = True
form.Show()

你再将鼠标移到父窗口上,弹出的窗口也不会消失。
追问
你没明白我的意思,鼠标移到父窗口上,弹出的窗口也不会消失。 我没有父窗.
追答
对不起,刚开始没看清,多读了几遍,总算明白了。你可以试试以下方法:
Protected Overrides ReadOnly Property ShowWithoutActivation As Boolean
Get
Return True
End Get
End Property
将此段代码加到你的窗口类中,再试试,应该能成功了
匿名用户
2011-07-06
展开全部
这个好像需要API
.net好像没封装进去 估计是我不会 不过API的方法也简单
//下面代码是c#改过来的 好久没用vb了 不知道有没有错,自己运行下试试
[System.Runtime.InteropServices.DllImport("user32.dll")] //winuser.h
private static extern Boolean ShowWindow(hWnd as IntPtr , nCmdShow as Int32 );
const SW_SHOWNOACTIVATE as int = 4;
//调用
ShowWindow(窗口.Handle, SW_SHOWNOACTIVATE);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式