Feedback

C# - Form ohne Rahmen verschieben

Veröffentlicht von am 15.01.2011
(2 Bewertungen)
Mit diesem Snippet kann man Forms per gedrückter Maustaste verschieben. Einfach auf eine Freie Stelle in der Form klicken und verschieben!

Einfach in die Form kopieren, welche bewegt werden soll!
Snippet in VB übersetzen
protected override void WndProc(ref Message m)
        {
            const int WM_NCHITTEST = 0x84;
            const int HTCAPTION = 0x02;

            if (m.Msg == WM_NCHITTEST)
            {
                m.Result = (IntPtr)HTCAPTION;
            }
            else
            {
                base.WndProc(ref m);
            }
        }
Abgelegt unter form, ohne, rahmen, verschieben, bewegen, klick, verziehen, position, .

4 Kommentare zum Snippet

NoBadCode schrieb am 27.04.2011:
Ein Problem dabei ist das die Formgröße danach nicht mehr veränderbar ist. Kann man das noch ändern?
SilversunP schrieb am 19.04.2012:
genial, danke
ich verstehe den quelltext zwar überhaupt nicht, aber es funktioniert echt gut :-)
Fawk_18 schrieb am 07.05.2012:
Das Snippet greift auf die Windows API zu um die Form zu verschieben.
Kann man machen, warum aber nicht die normalen Funktionen benutzen?
dariusarnold schrieb am 07.02.2013:
Seh ich wie Fawk..
Und wenn es stimmt, dass man dann nichtmehr die Fenstergrße ändern kann, ist das ja sogar ein Nachteil gegenüber der .NET alternative..
Irgendwo hier auf DNS hab ich auchmal mal irgendne Billig-Variante gefunden, die das gleiche macht, die gefiel mir garnicht. Es wird simmuliert, dass das Fenster nicht den Fokus hat und blablabla.. Irgendwas ganz komisches.. Und im Enteffekt hat man seine Anwendung ver****** ;) << sry..
Guckt euch mal den Artikel an:
http://www.tsql.de/csharp/csharp_fenster_ohne_titelleiste_verschieben
 

Logge dich ein, um hier zu kommentieren!