Schriftart in der Symbolleiste bei einer CheckBox ändern

lukasS

Erfahrenes Mitglied
Hallo,

ich habe in meiner Symbolleiste eine Checkbox integriert (siehe code unten). Leider ist die Schrift bißchen groß und es sieht nach einer Windows 3.11 - Anwendung aus. Ich habe schon einiges versucht um die Schriftgröße zu ändern, aber ohne Erfolg. Am besten wäre die Schriftgröße-/art wie in der Menüleiste.
Also mit SetFont funktioniert das irngendwie nicht, k. A. warum!

Hat jemand einen Tipp?


Die Checkbox ist von CButton abgeleitet, ist also keine CCheckListBox, nur zur Info.
Code:
	nIndex = m_wndToolBar.GetToolBarCtrl().CommandToIndex(ID_UNTER);
	m_wndToolBar.SetButtonInfo(nIndex, ID_UNTER, TBBS_SEPARATOR, 205);
	m_wndToolBar.GetToolBarCtrl().GetItemRect(nIndex, &rect);
	rect.top = 1;
	rect.bottom = rect.top + 25;
    rect.left +=2;
    rect.right=rect.left + nSize;
	if(!m_chkUnter.Create("Unteransicht", WS_CHILD | WS_VISIBLE | 
                                         BS_AUTOCHECKBOX | BS_LEFTTEXT, rect, 
                                         &m_wndToolBar, ID_UNTER))
	{
		TRACE(_T("Fehler beim Erstellen des Objektes\n"));
		return FALSE;
	}


Danke schonmal!

Lukas

PS: Bevor ich es vergesse, ich benutze Visual Studio 6.0.
 
Machst du SetFont auch auf m_chkUnter? Das sollte nämlich genauso klappen.
Wichtig, wenn du da ein CFont-Objekt benutzt, muss das genauso lange leben wie die CheckBox. Wenn der CFont da nur temporär beim Setzen existiert, dann hat die CheckBox danach wieder keinen richtigen Font und bekommt von Windows einen Standard-Font aufgedrückt.
 
Ok, das war es, hatte CFont nicht als member, sondern lokal.

Dadrauf wäre ich nie gekommen.

Danke!
 
Zurück