Font setzen bei abgeleitetem CEdit?



  • Ich habe eine Klasse abgeleitet, wo CEdit die Basisklasse ist. Nur die Schriftart bekomme ich nicht auf Courier New geändert.

    Das geht nicht:

    font.DeleteObject();
    
    	font.CreateFont(16,                         // nHeight
    					0,                          // nWidth
    					0,                          // nEscapement
    					0,                          // nOrientation
    					FW_NORMAL,                  // nWeight
    					FALSE,                      // bItalic
    					FALSE,                      // bUnderline
    					0,                          // cStrikeOut
    					ANSI_CHARSET,               // nCharSet
    					OUT_TT_PRECIS,              // nOutPrecision
    					CLIP_DEFAULT_PRECIS,        // nClipPrecision
    					PROOF_QUALITY,              // nQuality
    					FIXED_PITCH | FF_MODERN,    // nPitchAndFamily
    					"Courier New");             // lpszFacename
    
    	this->SetFont(&font);
    	CEdit::OnPaint();
    

    Und beim Erstellen der Klasse die Zuweisung hilft auch nicht:

    terminal = new CNoEchoEdit();
        terminal->Create(DS_MODALFRAME | WS_MINIMIZEBOX | ES_MULTILINE | ES_WANTRETURN | WS_VSCROLL | WS_CHILD | WS_VISIBLE, CRect(0, 1, 322, 176), this, IDC_BUFFER);
    	CFont font;
    	font.CreateFont(16,                         // nHeight
    					0,                          // nWidth
    					0,                          // nEscapement
    					0,                          // nOrientation
    					FW_NORMAL,                  // nWeight
    					FALSE,                      // bItalic
    					FALSE,                      // bUnderline
    					0,                          // cStrikeOut
    					ANSI_CHARSET,               // nCharSet
    					OUT_TT_PRECIS,              // nOutPrecision
    					CLIP_DEFAULT_PRECIS,        // nClipPrecision
    					PROOF_QUALITY,              // nQuality
    					FIXED_PITCH | FF_MODERN,    // nPitchAndFamily
    					"Courier New");             // lpszFacename
        terminal->SetFont( &font, true );
    

    In der Basisklasse, also wenn ich nur CEdit verwende, dann funktioniert das mit OnPaint.

    Danke,
    Micha


Anmelden zum Antworten