首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从别处调用picturebox_Paint函数

如何从别处调用picturebox_Paint函数
EN

Stack Overflow用户
提问于 2011-08-13 06:30:36
回答 2查看 1.6K关注 0票数 0
代码语言:javascript
复制
    private void textBox1_KeyDown(object sender, KeyEventArgs e)
    {
        char x;
        int sw = 0;
        if (e.KeyCode == Keys.Enter)
        {
            x = Convert.ToChar(textBox1.Text);
            int i;
            for (i = 0; i < n; i++)
                if (x == litere[i]) { lb[i].Text = ""; lb[i].Text = Convert.ToString(x); sw = 1; }
            if (sw == 0) { pictureBox1_Paint(???); }
        }
    }

$

代码语言:javascript
复制
    private void pictureBox1_Paint(object sender, PaintEventArgs e)
    {
        wrong++;
        Graphics g = CreateGraphics();
        Brush b=new System.Drawing.Drawing2D.HatchBrush(System.Drawing.Drawing2D.HatchStyle.Cross,Color.White,Color.Black);
        if (wrong == 1) g.FillEllipse(b, 250, 125, 30, 30);

    }

$我不知道如何调用Picturebox_paint函数...在textbox的事件中,或者如果不可能,我如何从el绘制picturebox中的内容

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-08-13 08:05:17

wrong++有很多东西。但是你可以通过以下方式开始修复它:

代码语言:javascript
复制
        if (sw == 0) pictureBox1.Invalidate(); 
票数 1
EN

Stack Overflow用户

发布于 2011-08-13 06:42:01

也许你应该创建一个方法:

代码语言:javascript
复制
private void redraw()
{
    wrong++;
    Graphics g = CreateGraphics();
    Brush b=new System.Drawing.Drawing2D.HatchBrush(System.Drawing.Drawing2D.HatchStyle.Cross,Color.White,Color.Black);
    if (wrong == 1) g.FillEllipse(b, 250, 125, 30, 30);
}

你可以在任何你想要的地方使用它

代码语言:javascript
复制
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
    redraw();
}

代码语言:javascript
复制
...
if (sw == 0) { redraw(); }
...
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7047012

复制
相关文章

相似问题

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