首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >没有匹配委托“”system.eventhandler“”的重载

没有匹配委托“”system.eventhandler“”的重载
EN

Stack Overflow用户
提问于 2011-09-26 16:35:10
回答 4查看 161.3K关注 0票数 32

因为我是C#的新手,所以我很难理解下面这段代码。当我点击按钮'knop‘时,方法'klik’必须被执行。该方法必须在窗体上绘制由“DrawMandel”生成的位图“b”。但是我经常收到这样的错误:“没有重载匹配委托'system.eventhandler‘”。

代码语言:javascript
复制
using System;
using System.Windows.Forms;
using System.Drawing;

class Mandelbrot : Form 
{
    public Bitmap b;
    public Mandelbrot() 
    {
        Button knop;
        knop = new Button();        
        knop.Location = new Point(370, 15);        
        knop.Size = new Size(50, 30);
        knop.Text = "OK";        

        this.Text = "Mandelbrot 1.0";
        this.ClientSize = new Size(800, 800);
        knop.Click += this.klik;
        this.Controls.Add(knop);        


    }
    public void klik(PaintEventArgs pea, EventArgs e) {
        Bitmap c = this.DrawMandel();
        Graphics gr = pea.Graphics;
        gr.DrawImage(b, 150, 200);
    }
    public Bitmap DrawMandel()
    {
        //function that creates the bitmap
        return b;
    }
    static void Main() {
        Application.Run(new Mandelbrot());
    }

}
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-09-26 16:38:53

您需要将public void klik(PaintEventArgs pea, EventArgs e)更改为public void klik(object sender, System.EventArgs e),因为没有参数为PaintEventArgs pea, EventArgs eClick事件处理程序。

票数 65
EN

Stack Overflow用户

发布于 2011-09-26 16:39:29

是的,点击事件处理程序有问题--第一个参数必须是对象类型,第二个参数必须是EventArgs。

代码语言:javascript
复制
public void klik(object sender, EventArgs e) {
  //
}

如果要在窗体或控件上绘制,请使用CreateGraphics方法。

代码语言:javascript
复制
public void klik(object sender, EventArgs e) {
    Bitmap c = this.DrawMandel();
    Graphics gr = CreateGraphics();  // Graphics gr=(sender as Button).CreateGraphics();
    gr.DrawImage(b, 150, 200);
}
票数 6
EN

Stack Overflow用户

发布于 2011-09-26 16:39:17

您需要包装按钮单击处理程序以匹配模式

代码语言:javascript
复制
public void klik(object sender, EventArgs e)
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7552551

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档