ここにメインフォームクラスがあります:
public partial class Main : Form
{
public void button_Click(object sender, EventArgs e)
{
//here I want to call function runtime() from SchedulingTimer class
// in oder to run afunc() every second or any Interval
}
public void afunc()
{
Message.Show(textbox1.Text);
}
}
そして、タイマークラスがあります:
public class SchedulingTimer
{
public static void runtime()
{
Timer myTimer = new Timer();
myTimer.Elapsed += new ElapsedEventHandler(DisplayTimeEvent);
myTimer.Interval =10000 ; // 1000 ms is one second
myTimer.Start();
}
public static void DisplayTimeEvent(object source, ElapsedEventArgs e)
{
//call function from main which have agrument textbox.Text
afunc();//or any function which variable sended from Main form
}
}
しかしafunc
、DisplayTimeEvent
メソッドを呼び出すと、エラーが発生します。これはstatic
メソッドであるため、アクセスできませんtextbox1.Text
。私のコードには間違いがあると思います。
アップデート:
- 設定
myTimer.Enable= true
してからクリックしましButton
たが、何も起こりませんでした。afunc()
うまくいかないようです。 DisplayTimeEvent に Main メソッドのインスタンスを作成します。
Main objMain=new Main();
objMain.afunc();
afunc にはいくつかの詳細があります。string keyw = cbkeyw.Text.ToString(); string link = cblink.Text.ToString(); if (radiobutton.Checked) { Yahoo yahoo = new Yahoo(); yahoo.RunProxyYahoo(proxylist, keyw, link, numPage, CountID); } else MessageBox.Show("Please choose Search Engine!");
私は afunc で Yahoo Class を呼び出しますが、それは本当に混乱しています。をクリックすると、すでに チェックインしているにもかかわらず、イベント
Button
のみが表示されます("Please choose Search Engine!");
radiobutton