C#CAD二次开发 非模态对话框切换窗口焦点
生活随笔
收集整理的這篇文章主要介紹了
C#CAD二次开发 非模态对话框切换窗口焦点
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本人錄制c#CAD二次開發視頻 基礎入門全套,感興趣可以淘寶搜索店鋪 PT的cad小店
https://i.xue.taobao.com/detail.htm?spm=a2174.7765247.0.0.6EmxKK&courseId=112889
?
在C#CAD二次開發 使用非模態對話框時,如果需要點擊按鈕跳轉到CAD操作或者讓CAD界面打印輸出是,需要人為的點擊的一下CAD界面,使其焦點進行切換,交互頗為不友善。可以用以下方案解決:
此時可以用WinAPI中的SetFocus將焦點移到CAD主窗口即可:
C#文件需要添加using 命名空間:
using System.Runtime.InteropServices;?
窗口類初始化加以下代碼
[DllImport("user32.dll", EntryPoint = "SetFocus")]
public static extern int SetFocus(IntPtr hWnd);
程序里讓程序切換到CAD 里頭的焦點,不需要人為點
Document acDoc = Application.DocumentManager.MdiActiveDocument;
SetFocus(acDoc.Window.Handle);
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
總結
以上是生活随笔為你收集整理的C#CAD二次开发 非模态对话框切换窗口焦点的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java 输入输出流 解决中文乱码问题【
- 下一篇: c# char unsigned_dll