Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: Pohyb s oknem

C# .NET .NET (C# a Visual Basic) Pohyb s oknem American English version English version

Aktivity (1)
Avatar
Eldest
Redaktor
Avatar
Eldest:20.11.2012 17:52

Ahoj, muže mi někdo poradit? V „okenní“ aplikaci jsem úplně „ořezal“ všechny základní ovládací prvky a styl. Tlačítka na minimalizaci, maximalizaci a zavření jsem si udělal sám, ale problém mám s tím, jak okno posouvat. U klasického okna jde posunovat, když chytnu za horní lištu a táhnu, ale tu jak jsem již zmiňoval, smazal. Mohl by mi někdo poradit, jak s oknem posouvat, kdybych např. měl label a po kliknutí na něj a táhnutím by se okno posunovalo? Díky

 
Odpovědět 20.11.2012 17:52
Avatar
David Čápka
Tým ITnetwork
Avatar
Nahoru Odpovědět 20.11.2012 20:33
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Eldest
Redaktor
Avatar
Odpovídá na David Čápka
Eldest:21.11.2012 16:45

No já právě nevím, co z toho použít a když něco zkusím, tak mi to nefunguje (nevím, jak přesně to upravit, jak jsem psal).

 
Nahoru Odpovědět 21.11.2012 16:45
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Eldest
David Čápka:21.11.2012 16:47

Četl jsi to vlákno vůbec? Je tam link ke stažení: http://www.codeproject.com/…itlebar-in-C

Nahoru Odpovědět 21.11.2012 16:47
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Eldest
Redaktor
Avatar
Eldest:21.11.2012 16:53

Četl, ale nechci se kvůli tomu někam registrovat.

 
Nahoru Odpovědět 21.11.2012 16:53
Avatar
Theodor Johnson
Redaktor
Avatar
Theodor Johnson:21.11.2012 16:55

Dal jsem ti to na ulozto

http://uloz.to/…dow-demo-zip

Nahoru Odpovědět 21.11.2012 16:55
Přecházím na "Cross-Platform Development"
Avatar
Eldest
Redaktor
Avatar
Odpovídá na Theodor Johnson
Eldest:21.11.2012 16:56

Díky, už jsem to vyřešil.

 
Nahoru Odpovědět 21.11.2012 16:56
Avatar
matesax
Redaktor
Avatar
Odpovídá na Eldest
matesax:21.11.2012 17:26

Doporučuji udělat si z toho objekt a ten volat:

using System.Runtime.InteropServices;
using System;

public class MoveIsEnabled
{
    public const int WM_NCLBUTTONDOWN = 0xA1, HT_CAPTION = 0x2;

    [DllImportAttribute("user32.dll")]
    public static extern int SendMessage(IntPtr hWnd, int Msg, int wParam, int lParam);
    [DllImportAttribute("user32.dll")]
    public static extern bool ReleaseCapture();

    public MoveIsEnabled(IntPtr who)
    {
        ReleaseCapture();
        SendMessage(who, WM_NCLBUTTONDOWN, HT_CAPTION, 0);
    }
}

Jako parametr "who" bude vlastnost Handle - Formu...

new MoveIsEnabled(Handle);
Editováno 21.11.2012 17:28
 
Nahoru Odpovědět 21.11.2012 17:26
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.