Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Megjegyzés:
A Microsoft Foundation Classes (MFC) könyvtár továbbra is támogatott. A továbbiakban azonban nem adunk hozzá funkciókat, és nem frissítjük a dokumentációt.
Lehetővé teszi, hogy egy betűtípus-kijelölési párbeszédpanelt beépítsen az alkalmazásba.
Szemantika
class CFontDialog : public CCommonDialog
Tagok
Nyilvános konstruktorok
| Név | Description |
|---|---|
| CFontDialog::CFontDialog | Egy CFontDialog objektumot hoz létre. |
Nyilvános metódusok
| Név | Description |
|---|---|
| CFontDialog::D oModal | Megjeleníti a párbeszédpanelt, és lehetővé teszi a felhasználó számára a kijelölést. |
| CFontDialog::GetCharFormat | Lekéri a kijelölt betűtípus karakterformázását. |
| CFontDialog::GetColor | A kijelölt betűtípus színét adja vissza. |
| CFontDialog::GetCurrentFont | Hozzárendeli a jelenleg kijelölt betűtípus jellemzőit egy LOGFONT struktúrához. |
| CFontDialog::GetFaceName | A kijelölt betűtípus arcnevét adja vissza. |
| CFontDialog::GetSize | A kijelölt betűtípus pontméretét adja vissza. |
| CFontDialog::GetStyleName | A kijelölt betűtípus stílusnevét adja vissza. |
| CFontDialog::GetWeight | A kijelölt betűtípus súlyát adja vissza. |
| CFontDialog::IsBold | Meghatározza, hogy a betűtípus félkövér-e. |
| CFontDialog::IsItalic | Meghatározza, hogy a betűtípus dőlt-e. |
| CFontDialog::IsStrikeOut | Meghatározza, hogy a betűtípus megjelenik-e az áthúzással. |
| CFontDialog::IsUnderline | Meghatározza, hogy a betűtípus alá van-e húzva. |
Nyilvános adatok tagjai
| Név | Description |
|---|---|
| CFontDialog::m_cf | Objektum testreszabására CFontDialog használt struktúra. |
Megjegyzések
Az CFontDialog objektum egy párbeszédpanel, amelyen a rendszerben jelenleg telepített betűtípusok listája látható. A felhasználó kiválaszthat egy adott betűtípust a listából, és ezt a kijelölést a rendszer visszajelenti az alkalmazásnak.
Objektum létrehozásához CFontDialog használja a megadott konstruktort, vagy hozzon létre egy új alosztályt, és használja a saját egyéni konstruktorát.
Miután létrehozott egy CFontDialog objektumot, a m_cf szerkezettel inicializálhatja a párbeszédpanel vezérlőinek értékeit vagy állapotát. A m_cf struktúra CHOOSEFONT típusú. A struktúrával kapcsolatos további információkért lásd a Windows SDK-t.
A párbeszédpanel-objektum vezérlőinek inicializálása után hívja meg a DoModal tagfüggvényt a párbeszédpanel megjelenítéséhez, és engedélyezze a felhasználónak a betűtípus kiválasztását.
DoModal visszaadja, hogy a felhasználó az OK (IDOK) vagy a Mégse (IDCANCEL) gombot választotta-e.
Ha DoModal IDOK-t ad vissza, az egyik CFontDialogtagfüggvény használatával lekérheti a felhasználó által bevitt adatokat.
A Windows CommDlgExtendedError függvénnyel megállapíthatja, hogy hiba történt-e a párbeszédpanel inicializálása során, és további információt kaphat a hibáról. A függvényről további információt a Windows SDK-n talál.
CFontDialog a Windows 3.1 és újabb verzióit tartalmazó COMMDLG.DLL fájlra támaszkodik.
A párbeszédpanel testreszabásához származtatjon egy osztályt CFontDialog, adjon meg egy egyéni párbeszédpanelsablont, és adjon hozzá egy üzenettérképet az értesítési üzenetek feldolgozásához a kiterjesztett vezérlőkből. A feldolgozatlan üzeneteket át kell adni az alaposztálynak.
A horogfüggvény testreszabása nem szükséges.
A használatról CFontDialogtovábbi információt a Gyakori párbeszédpanel-osztályok című témakörben talál.
Öröklési hierarchia
CFontDialog
Requirements
Fejléc: afxdlgs.h
CFontDialog::CFontDialog
Egy CFontDialog objektumot hoz létre.
CFontDialog(
LPLOGFONT lplfInitial = NULL,
DWORD dwFlags = CF_EFFECTS | CF_SCREENFONTS,
CDC* pdcPrinter = NULL,
CWnd* pParentWnd = NULL);
CFontDialog(
const CHARFORMAT& charformat,
DWORD dwFlags = CF_SCREENFONTS,
CDC* pdcPrinter = NULL,
CWnd* pParentWnd = NULL);
Paraméterek
plfInitial
Egy LOGFONT-adatszerkezetre mutató mutató, amely lehetővé teszi a betűtípus egyes jellemzőinek beállítását.
charFormat
Egy CHARFORMAT-adatszerkezetre mutató mutató, amely lehetővé teszi a betűtípus egyes jellemzőinek beállítását egy gazdag szerkesztési vezérlőben.
dwFlags
Egy vagy több választóbetűjelet ad meg. Egy vagy több előre beállított érték kombinálható a bitenkénti VAGY operátorral. Ha módosítja az m_cf.Flags struktúratagot, mindenképpen használjon bitenkénti VAGY operátort a módosításokban, hogy az alapértelmezett viselkedés érintetlen maradjon. Az egyes jelzőkkel kapcsolatos részletekért tekintse meg a WINDOWS SDK CHOOSEFONT szerkezetének leírását.
pdcPrinter
Mutató egy nyomtató-eszköz környezethez. Ha meg van adva, ez a paraméter annak a nyomtatónak a nyomtató-eszköz környezetére mutat, amelyen a betűtípusokat ki kell jelölni.
pParentWnd
Mutató a betűtípus párbeszédpanel szülő- vagy tulajdonosablakára.
Megjegyzések
Vegye figyelembe, hogy a konstruktor automatikusan kitölti a szerkezet tagjait CHOOSEFONT . Ezeket csak akkor módosítsa, ha az alapértelmezettnél eltérő betűtípus-párbeszédpanelt szeretne használni.
Megjegyzés:
A függvény első verziója csak akkor létezik, ha nincs gazdag szerkesztési vezérlő támogatása.
Example
// Show the font dialog with all the default settings.
CFontDialog dlg;
dlg.DoModal();
// Show the font dialog with 12 point "Times New Roman" as the
// selected font.
LOGFONT lf;
memset(&lf, 0, sizeof(LOGFONT));
CClientDC dc(this); // expects a CWnd that has already been initialized
lf.lfHeight = -MulDiv(12, dc.GetDeviceCaps(LOGPIXELSY), 72);
_tcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Times New Roman"));
CFontDialog fdlg(&lf);
fdlg.DoModal();
CFontDialog::D oModal
Hívja meg ezt a függvényt a Windows általános betűtípus párbeszédpaneljének megjelenítéséhez, és engedélyezze a felhasználónak a betűtípus kiválasztását.
virtual INT_PTR DoModal();
Visszaadott érték
IDOK vagy IDCANCEL. Az IDCANCEL visszaadásakor hívja meg a Windows CommDlgExtendedError függvényt annak megállapításához, hogy történt-e hiba.
Az IDOK és az IDCANCEL állandók, amelyek jelzik, hogy a felhasználó az OK vagy a Mégse gombot választotta-e.
Megjegyzések
Ha a m_cf szerkezet tagjainak beállításával szeretné inicializálni a különböző betűtípus-párbeszédpanel-vezérlőket, ezt a hívás DoModalelőtt, de a párbeszédpanel-objektum létrehozása után kell elvégeznie.
Ha DoModal idokot ad vissza, meghívhat más tagfüggvényeket, hogy beolvassa a felhasználó által megadott beállításokat vagy információkat a párbeszédpanelre.
Example
Tekintse meg a CFontDialog::CFontDialog és CFontDialog::GetColor példákat.
CFontDialog::GetCharFormat
Lekéri a kijelölt betűtípus karakterformázását.
void GetCharFormat(CHARFORMAT& cf) const;
Paraméterek
Cf
CHARFORMAT-struktúra, amely a kijelölt betűtípus karakterformázásával kapcsolatos információkat tartalmazza.
CFontDialog::GetColor
Hívja meg ezt a függvényt a kijelölt betűszín lekéréséhez.
COLORREF GetColor() const;
Visszaadott érték
A kijelölt betűtípus színe.
Example
// Get the color of the selected font, if any.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
COLORREF color = dlg.GetColor();
TRACE(_T("Color of the selected font = %8x\n"), color);
}
CFontDialog::GetCurrentFont
Ennek a függvénynek a meghívásával rendelje hozzá az aktuálisan kiválasztott betűtípus jellemzőit egy LOGFONT-struktúra tagjaihoz.
void GetCurrentFont(LPLOGFONT lplf);
Paraméterek
lplf
Egy struktúra mutatója LOGFONT .
Megjegyzések
Más CFontDialog tagfüggvények is elérhetők az aktuális betűtípus egyedi jellemzőinek eléréséhez.
Ha ezt a függvényt a Rendszer meghívja a DoModal hívása során, akkor az aktuális kijelölést adja vissza (amit a felhasználó lát vagy módosított a párbeszédpanelen). Ha ezt a függvényt a rendszer meghívja egy hívás DoModal után (csak akkor, ha DoModal idokot ad vissza), akkor azt adja vissza, amit a felhasználó ténylegesen kiválasztott.
Example
// Get the characteristics of the currently selected font, if any.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
LOGFONT lf;
dlg.GetCurrentFont(&lf);
TRACE(_T("Face name of the selected font = %s\n"), lf.lfFaceName);
}
CFontDialog::GetFaceName
Hívja meg ezt a függvényt a kijelölt betűtípus arcnevének lekéréséhez.
CString GetFaceName() const;
Visszaadott érték
A párbeszédpanelen CFontDialog kijelölt betűtípus arcneve.
Example
// Get the face name of the selected font, if any.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
CString facename = dlg.GetFaceName();
TRACE(_T("Face name of the selected font = %s\n"), facename);
}
CFontDialog::GetSize
Hívja meg ezt a függvényt a kijelölt betűtípus méretének lekéréséhez.
int GetSize() const;
Visszaadott érték
A betűtípus mérete egy pont tizedében.
Example
// Get the size of the selected font, if any.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
int size = dlg.GetSize();
TRACE(_T("The size of the selected font = %d\n"), size);
}
CFontDialog::GetStyleName
Hívja meg ezt a függvényt a kijelölt betűtípus stílusnevének lekéréséhez.
CString GetStyleName() const;
Visszaadott érték
A betűtípus stílusneve.
Example
// Get the style name of the selected font, if any.
CFontDialog dlg;
dlg.m_cf.Flags |= CF_USESTYLE;
if (dlg.DoModal() == IDOK)
{
CString stylename = dlg.GetStyleName();
TRACE(_T("Style name of the selected font = %s\n"), stylename);
}
CFontDialog::GetWeight
Hívja meg ezt a függvényt a kijelölt betűtípus súlyának lekéréséhez.
int GetWeight() const;
Visszaadott érték
A kijelölt betűtípus súlya.
Megjegyzések
A betűtípusok súlyával kapcsolatos további információkért lásd: CFont::CreateFont.
Example
// Get the weight of the selected font, if any.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
int weight = dlg.GetWeight();
TRACE(_T("Weight of the selected font = %d\n"), weight);
}
CFontDialog::IsBold
Hívja meg ezt a függvényt annak megállapításához, hogy a kijelölt betűtípus félkövér-e.
BOOL IsBold() const;
Visszaadott érték
Nonzero, ha a kijelölt betűtípusban engedélyezve van a félkövér karakter; egyéb esetben 0.
Example
// Is the selected font bold?
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
BOOL bold = dlg.IsBold();
TRACE(_T("Is the selected font bold? %d\n"), bold);
}
CFontDialog::IsItalic
Hívja meg ezt a függvényt annak megállapításához, hogy a kijelölt betűtípus dőlt-e.
BOOL IsItalic() const;
Visszaadott érték
Nonzero, ha a kijelölt betűtípus dőlt karaktert engedélyezve van; egyéb esetben 0.
Example
// Is the selected font italic?
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
BOOL italic = dlg.IsItalic();
TRACE(_T("Is the selected font italic? %d\n"), italic);
}
CFontDialog::IsStrikeOut
Hívja meg ezt a függvényt annak megállapításához, hogy a kijelölt betűtípus megjelenik-e az áthúzással.
BOOL IsStrikeOut() const;
Visszaadott érték
Nonzero, ha a kijelölt betűtípusban engedélyezve van a Strikeout tulajdonság; egyéb esetben 0.
Example
// Is the selected font displayed with strikeout?
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
BOOL strikeout = dlg.IsStrikeOut();
TRACE(_T("Is the selected font strikeout? %d\n"), strikeout);
}
CFontDialog::IsUnderline
Hívja meg ezt a függvényt annak megállapításához, hogy a kijelölt betűtípus alá van-e húzva.
BOOL IsUnderline() const;
Visszaadott érték
Nem kötelező, ha a kijelölt betűtípus aláhúzási tulajdonsága engedélyezve van; egyéb esetben 0.
Example
// Is the selected font underlined?
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
BOOL underline = dlg.IsUnderline();
TRACE(_T("Is the selected font underlined? %d\n"), underline);
}
CFontDialog::m_cf
Olyan struktúra, amelynek tagjai a párbeszédpanel-objektum jellemzőit tárolják.
CHOOSEFONT m_cf;
Megjegyzések
Az objektum m_cf létrehozása CFontDialog után a párbeszédpanel különböző aspektusait módosíthatja, mielőtt meghívja a tagfüggvénytDoModal. A struktúrával kapcsolatos további információkért lásd: CHOOSEFONT a Windows SDK-ban.
Example
// The code fragment creates a font based on the information
// we got from CFontDialog::m_cf variable.
CFontDialog dlg;
if (dlg.DoModal() == IDOK)
{
// Create the font using the selected font from CFontDialog.
LOGFONT lf;
memcpy(&lf, dlg.m_cf.lpLogFont, sizeof(LOGFONT));
CFont font;
VERIFY(font.CreateFontIndirect(&lf));
// Do something with the font just created...
CClientDC dc(this);
CFont *def_font = dc.SelectObject(&font);
dc.TextOut(5, 5, _T("Hello"), 5);
dc.SelectObject(def_font);
// Done with the font. Delete the font object.
font.DeleteObject();
}