在程序运行时尝试运行函数而不将其放在Main()中。 如何启动新创建的功能? 试图在Main()中调用RunMix()但由于lable1
而得到错误namespace mixer
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
int i = 0;
public void RunMix()
{
while (i == 0)
{
label1.Text = knob1.Angle.ToString();
Application.DoEvents();
}
}
private void Form1_Load(object sender, EventArgs e)
{
RunMix();
}
}
}
答案 0 :(得分:1)
在控制台应用程序中,Main()方法是应用程序的入口点。你必须把代码放在那里启动应用程序。
答案 1 :(得分:1)
如果您只想测试该功能,可以使用NUNIT或微软单元测试框架。否则你必须从Main()调用该函数。
答案 2 :(得分:0)
除Main
之外,您不能使用其他方法作为应用的入口点。
对于ex,你无法从这样的函数启动程序:
public static MyMain(string[] args)
{
}
答案 3 :(得分:0)
好吧,由于你的神秘问题,我的第一个答案完全脱离了主题。既然你已经更新了它,我会更好 - 不完整 - 理解你的意思。
查看代码我想你想要做的是在knob1控件的角度改变时改变标签的值。如果knob1是一个控件,它应该有一个change事件,你应该在knob1_change事件处理程序中更改label1的值。如果knob1没有任何事件 - 极不可能 - 那么你应该使用计时器。在你的情况下,循环只是一个坏主意。计时器应该像这样工作
Timer timer = new Timer();
public void RunMix(object sender, EventArgs e)
{
label1.Text = knob1.Angle.ToString();
}
private void Form1_Load(object sender, EventArgs e)
{
timer.Interval = 100;
timer.Tick += new EventHandler(RunMix);
timer.Start();
}
表格关闭时停止计时器或根据您的要求使用激活/停用循环。
答案 4 :(得分:0)
这是一个相同的java代码,但我不知道在C#中是一样的。 但我认为它也可以在C#中实现。
class staticEx { 静态的 { System.out.println(“Inside Static 块”); System.exit(0); }}
以上代码经过测试,并在GOOGLEing时从here获得。 在C#中也可能出现类似的事情。