Ho due moduli, il mio modulo principale è Form1 e il mio modulo secondario viene visualizzato su richiesta come una finestra di dialogo è Form2. Ora, se chiamo Form2, viene visualizzato sempre nell'angolo in alto a sinistra sullo schermo. La prima volta ho pensato che la mia forma non fosse affatto lì, ma poi l'ho vista appesa nell'angolo superiore dello schermo. Vorrei mostrare il mio modulo nella posizione corrente del mouse in cui l'utente fa clic su un menu di scelta rapida per visualizzare la finestra di dialogo modale. Ho già provato diverse cose e cercato campioni di codice. Ma non ho trovato nulla oltre a migliaia di codici diversi su come ottenere la posizione attuale del mouse in modi diversi che già conosco. Ma questa posizione è comunque sempre relativa allo schermo, alla forma principale, al controllo o qualunque sia il contesto attuale. Ecco il mio codice (il posizionamento del desktop, che ho provato anche non funziona e centri di centro-to-schermo la forma unica, così ho lasciato la proprietà di Windows.Default.Position):C# come mostrare un modulo in una posizione specifica del mouse sullo schermo?
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);
Avete provato il mio suggerimento? Hai implementato il costruttore modificato e questo non ha funzionato? –
@feedwall - Sono contento che abbia funzionato per te (e grazie per l'upvote e l'accettazione) –
StartPosition deve essere impostato su Manuale – ehh