wie war das nochmal Farbhintergrund von einem Textfeld festlegen



  • Hallo

    habe es wieder mal vergessen

    Wie lege ich die Hintergrundfarbe eines Textfeldes fest da
    es grau ist und ich es in weiß benötige.

    GetDlgItem(IDC_leer)->????

    IDC_leer >>ist die Resourse ID des Textfeldes
    ich will das ohne Membervariable machen

    Vossy



  • Deine Forumlierung lässt doch stark vermuten, dass das schon oft gefragt wurde und deswegen in der FAQ ist ...
    Schriftfarbe ändern
    Hier wird die Textfarbe geändert, aber die Hintergrundfarbe ist nur ein anderer Parameter.



  • Dafür mußt du die
    OnCtlColor()
    überschreiben

    //  Header
    public:
      CBrush* m_pEditBkBrush;
    
    //  in cpp
    
    //  Im Konstructor
    m_pEditBkBrush = new CBrush(RGB(0, 0, 0));
    
       HBRUSH CEditDialog::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
          {
              switch (nCtlColor) {
    
              case CTLCOLOR_EDIT:
              case CTLCOLOR_MSGBOX:
                  // Farben zu green auf black 
                     brush.
                  pDC->SetTextColor(RGB(0, 255, 0));
                  pDC->SetBkColor(RGB(0, 0, 0));
                  return (HBRUSH)(m_pEditBkBrush->GetSafeHandle());
    
              default:
                  return CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
              }
          }
    
          void CEditDialog::OnDestroy()
          {
              CDialog::OnDestroy();
    
              // Spricht für sich
              delete m_pEditBkBrush;
    }
    


  • Danke geht

    mir war aber so als ob es auch so in der art geht

    CFont schrift;
    CString ABCDE ="Times New Roman";
    
    schrift.CreateFont(22, 0, 0, 0, FW_NORMAL, 0, 20, 0, DEFAULT_CHARSET, OUT_CHARACTER_PRECIS, CLIP_CHARACTER_PRECIS, DEFAULT_QUALITY, DEFAULT_PITCH | FF_DONTCARE, ABCDE);
    
    CEdit *ed=(CEdit*)GetDlgItem(IDC_Anmeldename);
    ed->SetFont(&schrift);//nur vom Edit-Feld setzen
    

    Danke an euch

    Vossy



  • Damit kann man nur die Schriftart ändern, nicht aber die Farbe(n) 🙂



  • Danke

    Vossy


Anmelden zum Antworten