私は2つのフォームを持っています。私のメインフォームはForm1で、私のセカンダリフォームはForm2であるため、オンデマンドで表示されます。 Form2を呼び出すと、画面の左上隅に常に表示されます。最初は私のフォームが全くないと思ったが、画面の上隅にぶら下がっているのを見た。コンテキストメニューをクリックしてモーダルダイアログを表示する現在のマウスの位置にフォームを表示したいと思います。 私はすでにさまざまなことを試して、コードサンプルを探しました。しかし、私はすでに知っているさまざまな方法で実際のマウスの位置を取得する方法について何千もの異なるコード以外に何も見つけ出しませんでした。しかし、この位置は、常に画面、メインフォーム、コントロール、または現在のコンテキストが何であっても常に相対的です。ここに私のコード(私も試したデスクトップのポジショニングがうまくいかないと、中心から画面は専用フォームを中心に、私はWindows.Default.Positionに財産を残した):C#画面上の特定のマウス位置にフォームを表示する方法は?
Form2 frm2 = new Form2();
frm2.textBox1.Text = listView1.ToString();
frm2.textBox1.Tag = RenameFile;
DialogResult dlgres=frm2.ShowDialog(this);
frm2.SetDesktopLocation(Cursor.Position.X, Cursor.Position.Y);
あなたの試したことはありますか?変更されたコンストラクタを実装しましたが、うまくいかなかったのですか? –
@feedwall - 私はあなたのために働いてうれしいです(そしてupvote&acceptに感謝します) –
StartPositionをManualに設定する必要があります – ehh