杂化轨道VSEPR 2022-01-17 13:30 采纳率: 93.3%
浏览 282
已结题

C# winform“没有找到合适的方法来重写”

问题遇到的现象和发生背景

预期实现C#winform窗口汉字书写笔记效果,并在窗口标题上实时显示鼠标坐标
已经可以完美实现,汉字书写功能,窗口标题上实现鼠标坐标功能未实现

问题相关代码,请勿粘贴截图
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Drawing2D;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApp8
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
                                //鼠标坐标

        }
        bool isMouseDown = false;                           //鼠标是否按下
        Point pointMouse = new Point();
       

        protected override void OnMouseDown(MouseEventArgs e)
        {
            pointMouse = e.Location;                         //鼠标坐标
            isMouseDown = true;                              //标记鼠标已经按下
    }
        protected override void undermousemove(MouseEventArgs e)
        {
            Point clientMouse = e.Location;                      //获取鼠标窗体客户区坐标
            Point screenMouse = PointToScreen(clientMouse);      //获取鼠标屏幕坐标
            this.Text = string.Format("鼠标窗体坐标:({0},{1}) 鼠标屏幕坐标:({2},{3})",
              clientMouse.X, clientMouse.Y, screenMouse.X, screenMouse.Y);
        }

        protected override void OnMouseMove(MouseEventArgs e)
        {
            if (isMouseDown)
            {
                using (Graphics G = this.CreateGraphics())    //获取窗体绘制表面
                {
                    G.SmoothingMode = SmoothingMode.AntiAlias;//开启消除锯齿
                    using (Pen pen = new Pen(Color.Black, 3f))//创建宽度为3像素的黑色画笔
                    {
                        G.DrawLine(pen, pointMouse, e.Location); //绘制线段
                        pointMouse = e.Location;               //重新设置鼠标坐标
                    }
                }
            }

        }

        protected override void OnMouseUp(MouseEventArgs e)
        {
            isMouseDown = false;                             //标记鼠标未按下
        }


    }
}


运行结果及报错内容

严重性 代码 说明 项目 文件 行 禁止显示状态
错误 CS0115 “Form1.undermousemove(MouseEventArgs)”: 没有找到适合的方法来重写 WindowsFormsApp8 C:\Users\fligh\source\repos\WindowsFormsApp8\Form1.cs 35 活动

  • 写回答

1条回答 默认 最新

  • 於黾 2022-01-17 13:50
    关注

    是OnMouseMove吧,当鼠标移动时触发
    undermousemove是个啥,不仅全小写,under也写错了,应该是on

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月30日
  • 已采纳回答 1月22日
  • 创建了问题 1月17日

悬赏问题

  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突