CEdit - Mid Mouse Button



  • Hallo,

    habe ein Dialog Fenster mit einem CEdit Feld,
    wie erfahre ich, dass auf dem Edit Feld die mittlere Maus Taste gedrückt wurde?
    Ziel ist mit dieser Maus Taste, z. B.: den gerade markierten Inhalt zu löschen?

    Im Voraus Danke 😉



  • WM_MBUTTONDOWN sollte es sein.



  • ...also ich habe mit:

    ON_CONTROL(WM_MBUTTONDOWN, IDC_TEXTINPUT, OnEditMidMouseClick)

    versucht, leider klappt es nicht ... 😞
    mit den Message Maps unter MFC kenne ich mich nicht so gut aus,
    vielleicht liegt der Fehler an dieser stelle ?



  • Mach mal eine Funktion für die linke Maustaste und ändere das dann um. 🙂



  • Also, leider klappt es nicht bei mir 😞

    Mit:

    in der .h Datei:
    afx_msg void OnEditMidMouseClick();

    in der .cpp Datei:
    *BEGIN_MESSAGE_MAP(CEngTestDlg, CDialog)
    ON_WM_SYSCOMMAND()
    ...
    ON_CONTROL(WM_LBUTTONUP, IDC_TEXTINPUT, OnEditMidMouseClick)
    ...
    END_MESSAGE_MAP()

    void CEngTestDlg::OnEditMidMouseClick()
    {
    AfxMessageBox("m test");
    }*

    funktioniert einfach nicht,
    ich habe meine Eigene Edit Klasse abgeleitet,
    und diese Funktionen überschrieben:

    *class CMyEdit : public CEdit
    {
    protected:
    afx_msg void OnMButtonDown(UINT nFlags, CPoint point);
    afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
    afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
    afx_msg void OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags);
    };
    *

    in .cpp :

    DDX_Control(pDX, IDC_TEXTINPUT, m_editText);
    (m_editText ist ein Objekt der Klasse CMyEdit),

    das funktioniert auch nicht 😞
    Geht es überhaupt diese Funktionalität bei einem CEdit Kontrollelement zu
    programmieren?

    Gruss
    bula


Anmelden zum Antworten