-2

上部の Form1 で、コンストラクターに bool 変数を追加し、それを false に設定しました。次に、ボタン クリック イベントで true に設定します。

private void DriverVerifier_Click(object sender, EventArgs e)
        {

            if (MessageBox.Show("Are you Sure you want to Launch the Driver Verifier. Click Yes to Confirm and No to continue", "WinForm", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.No)
            {
                verifier = false;
            }
            else
            {
                verifier = true;
                verifiers(verifier);
                ProcessRun.Processing(Environment.SystemDirectory, "verifier.exe", "", false, "");
            }

        }

次に、下部に検証メソッドを作成しました。

public static bool verifiers(bool verify)
        {

            return verify;
        }

次に、新しいクラスで次のことを行いました。

if (Form1.verifiers(
   System.Threading.Thread.Sleep(500);
   SetForegroundWindow(proc.MainWindowHandle);

しかし、新しいクラスで Form1.verifiers を実行すると、ブール変数が要求されます。私がやりたかったのは、form1 ベリファイアのメソッドが true か false かを確認することだけです。

私は今どうすればいい ?

4

3 に答える 3

0

おもう

if (Form1.verifiers(
   System.Threading.Thread.Sleep(500);
   SetForegroundWindow(proc.MainWindowHandle);

意図されていたのは:

if (Form1.verifiers())
{
   System.Threading.Thread.Sleep(500);
   SetForegroundWindow(proc.MainWindowHandle);
}

その場合、静的メソッドのコンストラクターを次のように変更する必要があります。

public static bool verifiers()
于 2013-08-06T05:35:15.190 に答える
0

このverifiersメソッドはパラメーターを想定しているboolため、パラメーターを指定する必要があります。

bool verifier = true;
if (Form1.verifiers(verifier))
{
    System.Threading.Thread.Sleep(500);
    SetForegroundWindow(proc.MainWindowHandle);
}

または、パラメーターを受け入れないように、またはパラメーターなしのオーバーロードを提供するように書き換えます。

public static bool verifiers()
{
    ...
    return verify;
}

...

if (Form1.verifiers())
{
    System.Threading.Thread.Sleep(500);
    SetForegroundWindow(proc.MainWindowHandle);
}
于 2013-08-06T04:53:52.020 に答える
0

簡単なことの1つ..クラス名で参照することにより、静的メソッドを使用できます

したがって、静的メソッドVerifierを持つ新しいクラスを作成することをお勧めします

そして、 Class1.Verifier() によってアプリケーションから呼び出すことができます

別のクラスに配置することで、Form1 クラスを変更せずにメソッドの動作を変更できるという利点が得られます。

これは、メソッドを配置して適切な方法で使用するのに役立つと思います...

于 2013-08-06T04:58:03.167 に答える