好吧,其他人都对此有所尝试,我也不妨。我认为已经提出了这个答案,但可能解释得不够清楚。
在 Visual C# 中为您的项目添加一个新类,您将使用 Project -> add Class
给你的班级起个名字,然后点击添加
通常我把这个类命名为工具
然后在 Tools.cs 文件中
已编辑:我正在查看您的其他一些问题,我想我找到了您尝试实施的实际方法。正如有人在该线程中评论的那样,您确实需要使用更好的名称,我已经对该方法进行了更改,以希望模拟您的目标。对于任何试图理解这一点的人,请参阅C# graphics,paint,picturebox centering
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace MyNameSpace //Make sure this matches your projects namespace
{
class Tools
{
//Because this is outside the form that is calling it, you cannot access
//the actual form or panel where you wish to place the button(PictureBox)
//so instead of returning void (which is nothing) we return the newly
//created Button(PictureBox)
public static PictureBox NewBtn(string nName, int locX, int locY)
{
Font btnFont = new Font("Tahoma", 16);
PictureBox S = new PictureBox();
//You need to specify a size for your pictureBox
S.Width=100;
S.Height=100;
S.Location = new System.Drawing.Point(locX, locY);
S.Paint += new PaintEventHandler((sender, e) =>
{
var size = g.MeasureString(Name, btnFont);
e.Graphics.DrawString(Name, btnFont, Brushes.Black,
(S.Width - size.Width) / 2,
(S.Height - size.Height) / 2));
}
return S;
}
}
}
现在以您的一种形式
Panel1.Controls.Add(Tools.NewBtn("btn1",200,200));
或 PictureBox myButton=Tools.NewBtn("btn1",200,200);
无论如何我都没有编译或测试它,可能有错字,如果有明显的地方请告诉我,以便我可以编辑错误