1

ログインフォームがあります。フォームには 2 つのテキスト ボックスと 3 つのボタンがあります。1 つのボタンには「学生」と表示されます。

私がしたいのは、フォームが開いたときにこのボタンにツールチップを表示することです。表示するためにボタンに移動してホバーする必要はありません。フォームを読み込んでツールチップを表示すると、5 秒後にツールチップが消えるはずです。これは私がこれまでに試したことです:

private void Form1_Load(object sender, EventArgs e)
        {
            toolTip.IsBalloon = true;
            toolTip.ToolTipIcon = ToolTipIcon.Info;
            toolTip.ShowAlways = true;
            toolTip.UseFading = true;
            toolTip.UseAnimation = true;
            toolTip.ToolTipTitle = "Student Mode";
            toolTip.Show("You don't have to log in if you are a student. Just click here to go to the questions.", btnStudent);
        }
4

1 に答える 1

6

フォームの Load イベントは、あまりにも頻繁に誤用されています。ここにあり、ウィンドウが表示される前にイベントが発生します。したがって、ツールチップも表示されません。

代わりに、コードを Shown イベント ハンドラーに移動してください。OnShown() のオーバーライドを優先してください。クラスが独自のイベントをリッスンするのは意味がありません。

   protected override void OnShown(EventArgs e) {
        base.OnShown(e);
        // Your code here
        //...
   }
于 2013-02-28T18:06:21.683 に答える