winform中文本框,软键盘跟随

复制代码
   private void textBox1_Click(object sender, EventArgs e)
        {

            //Control.MousePosition
            Point p = System.Windows.Forms.Cursor.Position;
            run(p.X - 250, p.Y + 30);
        }
        [DllImportAttribute("user32.dll", EntryPoint = "MoveWindow")]
        public static extern bool MoveWindow(System.IntPtr hWnd, int X, int Y, int nWidth, int nHeight, bool bRepaint);
        /// <summary>
        /// 根据类名和窗口名获取句柄
        /// </summary>
        /// <param name="lpClassName"></param>
        /// <param name="lpWindowName"></param>
        /// <returns></returns>
        [DllImport("user32.dll")]
        public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);


        private static void run(int x, int y)
        {
            Process process = Process.Start("SoftBoard.exe");
            IntPtr windowHandle;
            do
            {
                windowHandle = FindWindow(null, "MainWindow");
            } while (windowHandle == IntPtr.Zero);
            MoveWindow(windowHandle, x, y, 960, 380, true);

            
        }
复制代码
Process process = Process.Start("SoftBoard.exe");
                process.WaitForInputIdle();
                IntPtr str = process.MainWindowHandle;
                MoveWindow(str, x, y, 515, 262, true);

句柄有时候找不到,用循环比较靠谱

posted @   小小高  阅读(1302)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
历史上的今天:
2017-04-28 js计算两个时间相差天数
2017-04-28 asp.net管线
2017-04-28 享元模式
2017-04-28 外观模式
2017-04-28 组合模式
2016-04-28 对特殊字符编码js与c#中的处理方法
2015-04-28 基础控制器MVC ,全局判断
点击右上角即可分享
微信分享提示