首页 > 其他分享 >winform窗体跟随

winform窗体跟随

时间:2022-12-22 17:58:07浏览次数:35  
标签:string POINT int 跟随 窗体 new FindWindow public winform

public partial class Form1 : Form
    {
        [DllImport("User32.dll", EntryPoint = "FindWindow")]
        private static extern IntPtr FindWindow(string lpClassName, string lpWindowName);
        [DllImport("user32.dll")]
        public static extern bool ClientToScreen(int hwnd, ref POINT pos);

        [StructLayout(LayoutKind.Sequential)]
        public struct POINT
        {
            public int X;
            public int Y;

            public override string ToString()
            {
                return "{" + X + "," + Y + "}";
            }
        }

        public Form1()
        {
            InitializeComponent();
            TopMost = true;
            new Thread(() =>
            {
                while (true)
                {
                    //微信文章浏览器
                    var handle = FindWindow("CefWebViewWnd", null);
                    if (handle == IntPtr.Zero)
                    {
                        this.Hide();
                        return;
                    }
                    POINT p = new POINT();
                    if (ClientToScreen(handle.ToInt32(), ref p))
                    {
                        this.Invoke(new Action(() =>
                        {
                            if (!this.Visible)
                            {
                                this.Show();
                            }

                            Location = new Point(p.X, p.Y + Height);
                        }));
                    }
                    Thread.Sleep(100);
                }
            }).Start();
        }

    }

 

标签:string,POINT,int,跟随,窗体,new,FindWindow,public,winform
From: https://www.cnblogs.com/shensigzs/p/16999286.html

相关文章

  • CSS自定义鼠标样式。JS获取鼠标坐标,实现提示气泡框跟随鼠标移动
     cursor:url(//img.58cdn.com.cn/resource/xxzl/captcha/pencil.png),default; ​​​​​​/*获取鼠标位置,让提示气泡框跟随鼠标*/varsgTip=document.querySelector("......
  • 学生管理系统-WinForm(C#)与MySQL
    一、创建数据库1创建数据库createdatabasestudentmanagersystem;2创建表login和studentCREATETABLElogin( userVARCHAR(50)PRIMARYKEY, passwdVARCHAR(......
  • 界面控件DevExpress WinForm v22.1——拥有全新的WXI调色板
    DevExpressWinForm拥有180+组件和UI库,能为WindowsForms平台创建具有影响力的业务解决方案。DevExpressWinForm能完美构建流畅、美观且易于使用的应用程序,无论是Office风......
  • [C#]Windows窗体应用基础-1
    代码参考:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;namespaceWindowsCircleArea.Lib......
  • [编程基础] C#自定义类调用窗体控件
    date:2017-11-0222:54:00+0800tags:-编程基础如果自定义类需要调用窗体控件,首先需要将窗体控件的可见级别(Modifiers)设为public。如下图所示:然......
  • [编程基础] C#自定义类调用窗体控件
    如果自定义类需要调用窗体控件,首先需要将窗体控件的可见级别(Modifiers)设为public。如下图所示:然后在Form1类下定义静态变量form1,并初始化。 classForm1:Form{//在For......
  • 第二十章《Java Swing》第2节:窗体的创建
    JavaSwing的各种组件都是由类来定义的,这些类大部分都位于javax.swing包下,也有小部分位于java.awt包下,因此在使用这些类的时候需要在程序中引入这个包下的类。在JavaSwing......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。   项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。   项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构......
  • WinForm(十)项目框架结构
    看到下面的项目结构,是否曾经相识?不要笑,这也是一种项目结构,极简主义。 项目结构没有对错,合适就好,但也要有几个要求,至少要做到结构明确,清晰,当然上图的结构清晰,但不明......