Et eller andet sted i din initialisering: this.MouseDown += new MouseEventHandler(this.Caption_MouseDown);
//API constants public const int WM_NCLBUTTONDOWN = 0xA1; public const int HTCAPTION = 0x2; //API functions to move the form [System.Runtime.InteropServices.DllImport("user32.dll")] public static extern bool ReleaseCapture();
[System.Runtime.InteropServices.DllImport("user32.dll")] public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
public void Caption_MouseDown(object sender, MouseEventArgs e) { //If the left mouse is pressed in top 30 pixels , release form for movement if (e.Button == MouseButtons.Left && e.Y < 30) { // Release form, so it can be moved ReleaseCapture(); SendMessage(Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0); } }
Saa "let" er det saamaend... Du kan selvfoelgelig altid aendre filtret(e.Button == MouseButtons.Left && e.Y < 30) fra hvor det er muligt at igangsaette flytningen
Proev at lave et nyt projekt. Jeg tror det har loekkedes dig at oedelaegge dig gamle og jeg kan umiddelbart med det du skriver ikke lige se hvad fejlen er.
this.MouseDown += new MouseEventHandler(this.Caption_MouseDown);
i din initialisering.
Hvis du vaelger Form propertien FormBorderStyle = None, saa skulle du i det oeverste omraade af formen(30 pixels) kunne dragge fra. Det er altsaa hvis du kopierer 100% min kode, og ikke aendrer noget andet.
Hvis du stadig har det gamle project(det der kom med fejlmeddelelse), saa proev at adder:
{ }
efter form_load functions deklarationen, saa det kommer til at se saaledes ud:
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.