CMFCKeyMapDialog-Klasse
Die CMFCKeyMapDialog
Klasse unterstützt ein Steuerelement, das Befehle tasten auf der Tastatur zuordnet.
Syntax
class CMFCKeyMapDialog : public CDialogEx
Member
Öffentliche Konstruktoren
Name | Beschreibung |
---|---|
CMFCKeyMapDialog::CMFCKeyMapDialog | Erstellt ein CMFCKeyMapDialog -Objekt. |
Öffentliche Methoden
Name | Beschreibung |
---|---|
CMFCKeyMapDialog::D oModal | Zeigt ein Dialogfeld zur Tastaturzuordnung an. |
Geschützte Methoden
Name | Beschreibung |
---|---|
CMFCKeyMapDialog::FormatItem | Vom Framework aufgerufen, um eine Zeichenfolge zu erstellen, die eine Schlüsselzuordnung beschreibt. Standardmäßig enthält die Zeichenfolge den Befehlsnamen, die verwendeten Tastenkombinationen und die Beschreibung der Tastenkombination. |
CMFCKeyMapDialog::GetCommandKeys | Ruft eine Zeichenfolge ab, die eine Liste der Tastenkombinationen enthält, die dem angegebenen Befehl zugeordnet sind. |
CMFCKeyMapDialog::OnInsertItem | Wird vom Framework aufgerufen, bevor ein neues Element in das interne Listensteuerelement eingefügt wird, das das Tastaturzuordnungssteuerelement unterstützt. |
CMFCKeyMapDialog::OnPrintHeader | Wird vom Framework aufgerufen, um die Kopfzeile für die Tastaturkarte auf einer neuen Seite zu drucken. |
CMFCKeyMapDialog::OnPrintItem | Vom Framework aufgerufen, um ein Tastaturzuordnungselement zu drucken. |
CMFCKeyMapDialog::OnSetColumns | Wird vom Framework aufgerufen, um Beschriftungen für die Spalten im internen Listensteuerelement festzulegen, die das Tastaturzuordnungssteuerelement unterstützen. |
CMFCKeyMapDialog::P rintKeyMap | Wird vom Framework aufgerufen, wenn ein Benutzer auf die Schaltfläche "Drucken " klickt. |
CMFCKeyMapDialog::SetColumnsWidth | Wird vom Framework aufgerufen, um die Breite der Spalten im internen Listensteuerelement festzulegen, das das Tastaturzuordnungssteuerelement unterstützt. |
Hinweise
Verwenden Sie die CMFCKeyMapDialog
Klasse, um ein Dialogfeld zur veränderbaren Tastaturzuordnung zu implementieren. Das Dialogfeld verwendet ein Listenansichtssteuerelement, um Tastenkombinationen und die zugehörigen Befehle anzuzeigen.
Um die CMFCKeyMapDialog
Klasse in einer Anwendung zu verwenden, übergeben Sie einen Zeiger an das Hauptframefenster als Parameter an den CMFCKeyMapDialog
Konstruktor. Rufen Sie dann die DoModal
Methode auf, um ein modales Dialogfeld zu starten.
Vererbungshierarchie
Anforderungen
Header: afxkeymapdialog.h
CMFCKeyMapDialog::CMFCKeyMapDialog
Erstellt ein CMFCKeyMapDialog
-Objekt.
CMFCKeyMapDialog(
CFrameWnd* pWndParentFrame,
BOOL bEnablePrint=FALSE);
Parameter
pWndParentFrame
[in] Ein Zeiger auf das übergeordnete Fenster des CMFCKeyMapDialog
Objekts.
bEnablePrint
[in] TRUE, wenn die Liste der Tastenkombinationen gedruckt werden kann; andernfalls FALSE. Der Standardwert lautet FALSE.
Hinweise
Beispiel
Im folgenden Beispiel wird veranschaulicht, wie ein Objekt der CMFCKeyMapDialog
Klasse erstellt wird. Dieses Beispiel ist Teil des Visual Studio Demo-Beispiels.
// this points to a CMainFrame class which extends the
// CMDIFrameWndEx class
CMFCKeyMapDialog dlg(this, TRUE /* Enable Print */);
CMFCKeyMapDialog::D oModal
Zeigt ein Dialogfeld zur Tastaturzuordnung an.
virtual INT_PTR DoModal();
Rückgabewert
Eine signierte ganze Zahl, z. B. IDOK oder IDCANCEL, die an die CDialog::EndDialog-Methode übergeben wird. Die Methode schließt wiederum das Dialogfeld. Weitere Informationen finden Sie unter "CDialog::D oModal".
Hinweise
Im Dialogfeld "Tastaturzuordnung" können Sie Tastenkombinationen für verschiedene Befehlskategorien auswählen und zuweisen. Darüber hinaus können Sie die ausgewählten Tastenkombinationen und deren Beschreibung in die Zwischenablage kopieren.
CMFCKeyMapDialog::FormatItem
Vom Framework aufgerufen, um eine Zeichenfolge zu erstellen, die eine Schlüsselzuordnung beschreibt. Standardmäßig enthält die Zeichenfolge den Befehlsnamen, die verwendeten Tastenkombinationen und die Beschreibung der Tastenkombination.
virtual CString FormatItem(int nItem) const;
Parameter
nItem
[in] Der nullbasierte Index eines Elements in der internen Liste der Schlüsselzuordnungen.
Rückgabewert
Ein CString
Objekt, das den formatierten Elementtext enthält.
Hinweise
CMFCKeyMapDialog::GetCommandKeys
Ruft einen Zeichenfolgenwert ab. Die Zeichenfolge enthält eine Liste der Tastenkombinationen, die einem angegebenen Befehl zugeordnet sind.
virtual CString GetCommandKeys(UINT uiCmdID) const;
Parameter
uiCmdID
[in] Eine Befehls-ID.
Rückgabewert
Eine durch Semikolons getrennte (';') Liste mit Tastenkombinationen, die dem angegebenen Befehl zugeordnet sind.
Hinweise
CMFCKeyMapDialog::OnInsertItem
Wird vom Framework aufgerufen, bevor ein neues Element in ein internes Listensteuerelement eingefügt wird, das das Tastaturzuordnungssteuerelement unterstützt.
virtual void OnInsertItem(
CMFCToolBarButton* pButton,
int nItem);
Parameter
pButton
[in] Ein Zeiger auf eine Symbolleistenschaltfläche, die verwendet wird, um eine Tastenkombination einem Befehlsnamen und einer Beschreibung zuzuordnen. Das Schlüsselzuordnungselement wird in einem internen Listensteuerelement gespeichert.
nItem
[in] Ein nullbasierter Index, der angibt, wo das neue Schlüsselzuordnungselement in das interne Listensteuerelement eingefügt werden soll.
Hinweise
CMFCKeyMapDialog::OnPrintHeader
Wird vom Framework aufgerufen, um die Kopfzeile für die Tastaturkarte auf einer neuen Seite zu drucken.
virtual int OnPrintHeader(
CDC& dc,
int nPage,
int cx) const;
Parameter
dc
[in] Der Gerätekontext für den Drucker.
nPage
[in] Die zu druckde Seitenzahl.
cx
[in] Der horizontale Offset der Kopfzeile in Pixel.
Rückgabewert
Bei erfolgreicher Ausführung der Höhe des gedruckten Texts. Weitere Informationen finden Sie im Abschnitt "Rückgabewert" von CDC::D rawText.
Hinweise
Das Framework verwendet diese Methode, um die Tastaturzuordnung zu drucken. Standardmäßig druckt diese Methode die Seitenzahl, den Anwendungsnamen und den Dialogfeldtitel.
CMFCKeyMapDialog::OnPrintItem
Vom Framework aufgerufen, um ein Tastaturzuordnungselement zu drucken.
virtual int OnPrintItem(
CDC& dc,
int nItem,
int y,
int cx,
BOOL bCalcHeight) const;
Parameter
dc
[in] Der Gerätekontext des Druckers.
nItem
[in] Der nullbasierte Index des zu druckende Elements.
y
[in] Der vertikale Offset zwischen dem oberen Rand der Seite und der Position des Elements.
cx
[in] Der horizontale Offset zwischen der linken Seite und der Position des Elements.
bCalcHeight
[in] TRUE, um die beste Höhe für das Druckelement zu berechnen; FALSE zum Abschneiden des Druckelements, damit es in den Standardbereich passt.
Rückgabewert
Die Höhe des gedruckten Elements.
Hinweise
Das Framework ruft diese Methode auf, um ein Schlüsselzuordnungsdialogfeldelement zu drucken. Standardmäßig druckt diese Methode den Befehlsnamen, die Tastenkombinationen und die Befehlsbeschreibung des Elements.
CMFCKeyMapDialog::OnSetColumns
Wird vom Framework aufgerufen, um Beschriftungen für die Spalten im internen Listensteuerelement festzulegen, die das Tastaturzuordnungssteuerelement unterstützen.
virtual void OnSetColumns();
Hinweise
Standardmäßig ruft diese Methode die Beschriftungen für die Spalten aus drei Ressourcen ab. Die Befehlsspaltenbeschriftung stammt aus IDS_AFXBARRES_COMMAND, die Hauptspaltenbeschriftung stammt aus IDS_AFXBARRES_KEYS, und die Beschreibungsspaltenbeschriftung stammt aus IDS_AFXBARRES_DESCRIPTION.
CMFCKeyMapDialog::P rintKeyMap
Wird vom Framework aufgerufen, wenn ein Benutzer auf die Schaltfläche "Drucken " klickt.
virtual void PrintKeyMap();
Hinweise
Die PrintKeyMap
Methode druckt die Schlüsselzuordnung. Er initiiert einen neuen Druckauftrag und ruft dann wiederholt die CMFCKeyMapDialog::OnPrintHeader - und CMFCKeyMapDialog::OnPrintItem-Methoden auf, bis alle Schlüsselzuordnungen gedruckt werden.
CMFCKeyMapDialog::SetColumnsWidth
Wird vom Framework aufgerufen, um die Breite der Spalten im internen Listensteuerelement festzulegen, das das Tastaturzuordnungssteuerelement unterstützt.
virtual void SetColumnsWidth();
Hinweise
Diese Methode legt die Spalten des internen Listensteuerelements auf Standardbreiten fest. Zuerst wird die Breite der Spalte mit den Tastenkombinationen berechnet. Dann wird ein Drittel der verbleibenden Breite der Befehlsspalte zugeordnet, und die verbleibenden zwei Drittel werden der Beschreibungsspalte zugewiesen.