当前位置:编程学习 > C#/ASP.NET >>

TopMost设为True后,msgbox窗口不置顶跑主窗口后面去了,怎么办啊?

然后每次msgbox前,我都把TopMost设成flase,完事后再改回true?这也太折腾了吧。

有没有其他办法啊?还是说我窗口置顶除了TopMost=True外还有其他设置让msgbox显示到最前端? TopMost msgbox --------------------编程问答-------------------- TopMost 只适用于小型浮点窗体,用在主窗体上太坑爹了。
其他软件随便弹出个消息,都被你的窗体挡住了。 --------------------编程问答-------------------- 不知道msgbox可不可以设置最前,但是应该可以自己写个弹出窗也设置topmost就可以了啊。。 --------------------编程问答-------------------- 试了一下,没发现LZ说的这种现象,可以把相关代码帖出来吗? --------------------编程问答-------------------- MessageBox.Show有一个参数:

    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            Control.CheckForIllegalCrossThreadCalls = false;
            this.TopMost = true;
        }

        private void fun(Object o)
        {
            MessageBox.Show(this, "");
        }

        private void button1_Click(object sender, EventArgs e)
        {
            ThreadPool.QueueUserWorkItem(fun, null);
        }
    }
--------------------编程问答--------------------
引用 3 楼 sjyforg 的回复:
试了一下,没发现LZ说的这种现象,可以把相关代码帖出来吗?


我了个去。前天发现这现象后,我就把窗口置顶这个选项直接取消了,今天看你说没有这现象,我又重新加上去自己试试,结果还真的没有,奇了怪了。 --------------------编程问答-------------------- --------------------编程问答--------------------
引用 5 楼 u010410807 的回复:
Quote: 引用 3 楼 sjyforg 的回复:

试了一下,没发现LZ说的这种现象,可以把相关代码帖出来吗?


我了个去。前天发现这现象后,我就把窗口置顶这个选项直接取消了,今天看你说没有这现象,我又重新加上去自己试试,结果还真的没有,奇了怪了。


只有在别的窗体弹出的对话框弹出以后,再激活topmost窗体,才会遮住的

topmost窗体上用messagebox,这个对话框也是topmost的,因为属于子窗口

补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,