Freigeben über


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

CObject

CCmdTarget

CWnd

CDialog

CDialogEx

CMFCKeyMapDialog

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.

Siehe auch

Hierarchiediagramm
Klassen
CKeyboardManager-Klasse