c# 如何让新弹出的窗口不成为当前窗口?

需要实现这样的功能:在某刻,弹出一个窗口,自动失去焦点,不影响之前的当前窗口。
最新回答
孤岛re∷

2024-10-17 16:24:36

可以设置原来的窗体的TopMost属性
这样,改窗体就置顶了
再弹出新的也会失去焦点,不会影响当前窗口了
冰月灵狐

2024-10-17 10:56:25

使用这个api来显示窗体就可以了
[DllImportAttribute("user32.dll")]
private static extern Boolean ShowWindow(IntPtr hWnd, Int32 nCmdShow);
假设要显示的窗体类为Form2,
Form2 f2=new Form2();
ShowWindow(f2.Handle,4);
另外要设置一下Form2的位置,第二个参数一定要是4,才不会影响当前窗体的焦点
话不投机半句多-

2024-10-17 13:34:40

在弹出的那个窗体时 你需要写上 弹出窗体是否顶层显示或者把这个窗体的有个显示层次的属性赋值小于当前窗体
不要忘記

2024-10-17 12:07:33

记得要在第二个窗体加载的时候使用啊
this.timer1.Enabled = true;
Form1 fm= new Form1(this);
fm.StartPosition = FormStartPosition.CenterScreen;
fm.ShowDialog();
------accp5.0学者
故事与月有关

2024-10-17 11:25:48

他们说的是对的。
希望结交一些敢于挑战,不服现状的朋友。516QQ995590