buttons verschieden färbig darstellen



  • hi, ich habe einen dialog, aufdem mehrere buttons sind.
    diese buttons sollen verschiedene farben haben, also hab ich folgendes erfolglos versucht:
    ich kann mich bis in diese methode reindebuggen, aber kein button ändert die farbe.

    HBRUSH CMessageDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor) 
    {
        HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
    
            int nID = pWnd->GetDlgCtrlID();
        switch(nCtlColor)
        {
        case CTLCOLOR_BTN   : switch(nID)
                                  {
                                  case IDC_BUTTON1:
                                  pDC->SetTextColor(RGB(255,0,0));
                      pDC->SetBkColor(RGB(255,255,255));
                                  break;
                                  case IDC_BUTTON2:
                                  pDC->SetTextColor(RGB(255,255,1));
                                  pDC->SetBkColor(RGB(0,0,0));
                                  break;
                                  }
                                  break;
    
        }
        return hbr;
    }
    


  • geht nur mit BS_OWNERDRAW, dann muss aber alles selbst gezeichnet werden


Anmelden zum Antworten