eigenen Button in die Titelleiste

anmae

Erfahrenes Mitglied
Hallo,

ich möchte einen Button in der Titelleiste haben, welcher mir mein Fenster im Fordergrund hält. Den Button habe ich schon, er muß halt nur noch oben in die Leiste.

Gibt es da eine Möglichkeit?

thx ich
 
na gut, das ist wirklich ein wenig Aufwand.
andere Idee.:

ich habe mit einem Statischen Textfeld und den benötigten Buttons (Schließen und mein eigener) eine Titelleiste selbst gebaut.

Wie schaffe ich es das man beim Klicken auf idese das Fenster verschieben kann damit es eine echte Titelleiste wird?
 
Du musst einen Handler für WM_MOUSEMOVE hinzufügen.
Angenommen, dein statisches Textfeld hat die ID "IDC_STATIC_TITLE", dann kannst du mit folgendem Code das ganze Fenster verschieben:

Code:
void CMyDialog::OnMouseMove(UINT nFlags, CPoint point) 
{
    if( nFlags == MK_LBUTTON )
    {
        CRect rc;
        GetDlgItem(IDC_STATIC_TITLE)->GetWindowRect(&rc);
        ScreenToClient(&rc);

        if( rc.PtInRect(point) )
        {
            ::ReleaseCapture();
            SendMessage(WM_NCLBUTTONDOWN, HTCAPTION, 0);
        }
    }

    CDialog::OnMouseMove(nFlags, point);
}
 
Zurück