CMFCColorBar-Klasse
Die Klasse stellt eine CMFCColorBar andockbare Symbolleisten dar, die Farben in einem Dokument oder einer Anwendung auswählen kann.
class CMFCColorBar : public CMFCPopupMenuBar
Mitglieder
Geschützte Konstruktoren
Name |
Description |
---|---|
Erstellt ein CMFCColorBar-Objekt. |
Öffentliche Methoden
Name |
Description |
---|---|
Berechnet die vertikale und horizontale Ränder, die erforderlich sind, um die Schaltflächen auf dem Farbleistensteuerelement zu enthalten und passt dann den Speicherort dieser Schaltflächen. |
|
Stellt ein Farbleistensteuerfenster erstellt, fügt es an den CMFCColorBar-Objekt an und ändert die Größe des Steuerelements, um die angegebene Farbpalette zu enthalten. |
|
Stellt ein Farbleistensteuerfenster erstellt und fügt es an den CMFCColorBar-Objekt. |
|
In oder aus die automatische Schaltfläche. |
|
Aktiviert oder deaktiviert die Anzeige eines Dialogfelds, das den Benutzer mehr Farben auswählen können. |
|
Ruft die aktuell ausgewählte Farbe ab. |
|
Ruft die Befehls-ID des aktuellen Farbleistensteuerelements ab. |
|
Ruft die Farbe ab, die angibt, dass eine Farbenschaltfläche den Fokus besitzt; Das bedeutet, dass die Schaltfläche heiß. |
|
Ruft die horizontale Rand ab, der das Leerzeichen zwischen der linken oder rechten Farbenzelle und der Clientbereichsgrenze ist. |
|
Ruft den vertikalen Rand ab, der das Leerzeichen zwischen der oberen oder die Unterseitenfarbenzelle und die Clientbereichsgrenze ist. |
|
Gibt an, ob die aktuelle Farbbalken von ist. |
|
Legt die Farbe fest, die derzeit ausgewählt ist. |
|
Legt einen neuen Namen für eine angegebene Farbe fest. |
|
Legt eine neue Befehls-ID für ein Farbleistensteuerelement fest. |
|
Legt die Liste von Farben fest, die im aktuellen Dokument verwendet werden. |
|
Legt den horizontalen Rand fest, der das Leerzeichen zwischen der linken oder rechten Farbenzelle und der Clientbereichsgrenze ist. |
|
Legt den vertikalen Rand fest, der das Leerzeichen zwischen der oberen oder die Unterseitenfarbenzelle und die Clientbereichsgrenze ist. |
Geschützte Methoden
Name |
Description |
---|---|
Passt die Positionen der Farbenschaltflächen auf dem Farbleistensteuerelement. |
|
Gibt an, ob die Beschriftung von Farbenschaltflächen ändern kann. |
|
Gibt an, ob das Farbleistensteuerobjekt in einer Symbolleistenliste während des Anpassungsprozesses angezeigt werden kann. |
|
Aufgerufen vom Framework als Teil des Layoutrechenvorgangs. |
|
Initalizes eine Palette mit den Farben in einem angegebenen Array Farben. |
|
Berechnet die Anzahl der Zeilen und Spalten im Raster eines Farbleistensteuerelements. |
|
Berechnet die zusätzliche Höhe, die die aktuelle Farbleiste benötigt, um andere Benutzeroberflächenelemente wie die Schaltfläche Andere anzuzeigen, dokumentieren Farben, u. a. |
|
Initialisiert ein Array Farben mit den Farben in einer angegebenen Palette oder in der Systemstandardpalette. |
|
Aufgerufen vom Framework, wenn ein Benutzer eine Taste drückt. |
|
Aufgerufen durch das Framework, um eine Hierarchie von Popup- Steuerelemente zu schließen. |
|
Aufgerufen durch das Framework, um ein Benutzeroberflächen-Element eines Farbleistensteuerelements vor dem Element wird zu aktivieren oder zu deaktivieren angezeigt. |
|
Öffnet ein Dialogfeld. |
|
Aktualisiert vollständig das Farbleistensteuerelement neu. |
|
Legt die Logische Palette des angegebenen Gerätekontexts zur Palette der übergeordneten Schaltfläche des aktuellen Farbleistensteuerelements fest. |
|
Legt den m_pWndPropList geschützten Datenmember zum angegebenen Zeiger auf ein Eigenschaftenraster fest. |
|
Zeigt das Rahmenfenster an, das das Farbleistensteuerelement besitzt, um die Meldungszeile in der Statusleiste zu aktualisieren. |
Geschützte Datenmember
Name |
Description |
---|---|
m_bInternal |
Ein boolesches Feld, das bestimmt, ob Mausereignisse verarbeitet werden.In der Regel werden Mausereignisse verarbeitet, wenn dieses Feld TRUE ist und Anpassungsmodus FALSE ist. |
m_bIsEnabled |
Ein boolescher Wert, der angibt, ob ein Steuerelement aktiviert ist. |
m_bIsTearOff |
Ein boolescher Wert, der angibt, ob das Farbleistensteuerelement Andocken unterstützt. |
m_BoxSize |
Ein CSize-Objekt, das die Größe einer Zelle in einem Farbleistenraster angibt. |
m_bShowDocColorsWhenDocked |
Ein boolescher Wert, der angibt, ob Dokumentenfarben anzeigt, wenn die Farbleiste angedockt ist.Weitere Informationen finden Sie unter CMFCColorBar::SetDocumentColors. |
m_bStdColorDlg |
Ein boolescher Wert, der angibt, ob das Standardsystem Farbe Dialogfeld oder das Dialogfeld CMFCColorDialog anzeigt.Weitere Informationen finden Sie unter CMFCColorBar::EnableOtherButton. |
m_ColorAutomatic |
COLORREF, das die aktuelle Farbe automatische speichert.Weitere Informationen finden Sie unter CMFCColorBar::EnableOtherButton. |
m_ColorNames |
Ein CMap-Objekt, das einen Satz RGB zuordnet, Farbe mit ihren Namen. |
m_colors |
CArray von COLORREF-Werten, das die Farben enthält, die im Farbleistensteuerelement angezeigt werden. |
m_ColorSelected |
Ein COLORREF-Wert, der die Farbe ist, die der Benutzer gerade vom Farbleistensteuerelement ausgewählt hat. |
m_lstDocColors |
CList von COLORREF-Werten, das die Farben enthält, die derzeit in einem Dokument verwendet werden. |
m_nCommandID |
Eine ganze Zahl, die die Befehls-ID einer Farbenschaltfläche ist. |
m_nHorzMargin |
Eine ganze Zahl, die der horizontale Rand zwischen der Farbe ist, Schaltflächen in einem Raster von Farben. |
m_nHorzOffset |
Eine ganze Zahl, die der horizontale Offset zum Mittelpunkt der Farbenschaltfläche ist.Dieser Wert ist von Bedeutung, wenn die auf ein Bild oder zusätzlich zu einer Farbe Text. |
m_nNumColumns |
Eine ganze Zahl, die die Anzahl der Spalten in einem Farbleistensteuergitter von Farben ist. |
m_nNumColumnsVert |
Eine ganze Zahl, die die Anzahl der Spalten in einem vertikal orientierten Raster von Farben ist. |
m_nNumRowsHorz |
Eine ganze Zahl, die die Anzahl der Spalten in einem horizontal ausgerichteten Raster von Farben ist. |
m_nRowHeight |
Eine ganze Zahl, die auf die Höhe einer Zeile der Farbe ist, Schaltflächen in einem Raster von Farben. |
m_nVertMargin |
Eine ganze Zahl, die der vertikalen Rand zwischen der Farbe ist, Schaltflächen in einem Raster von Farben. |
m_nVertOffset |
Eine ganze Zahl, die der vertikalen Offset zum Mittelpunkt der Farbenschaltfläche ist.Dieser Wert ist von Bedeutung, wenn die auf ein Bild oder zusätzlich zu einer Farbe Text. |
m_Palette |
CPalette der Farben, die im Farbleistensteuerelement verwendet werden. |
m_pParentBtn |
Ein Zeiger auf einen CMFCColorButton-Objekt, das das übergeordnete Element der aktuellen Schaltfläche ist.Dieser Wert ist von Bedeutung, wenn die Farbenschaltfläche in einer Hierarchie von Symbolleisten-Steuerelementen ist oder in einem Farbeigenschaftenraster-steuerelement ist. |
m_pParentRibbonBtn |
Ein Zeiger auf einen CMFCRibbonColorButton-Objekt, das auf dem Menüband ist und die Elemente Schaltfläche der aktuellen Schaltfläche ist.Dieser Wert ist von Bedeutung, wenn die Farbenschaltfläche in einer Hierarchie von Symbolleisten-Steuerelementen ist oder in einem Farbeigenschaftenraster-steuerelement ist. |
m_pWndPropList |
Ein Zeiger auf ein Objekt CMFCPropertyGridCtrl. |
m_strAutoColor |
CString, das der Text ist, der auf der Schaltfläche Automatisch angezeigt wird.Weitere Informationen finden Sie unter CMFCColorBar::EnableAutomaticButton. |
m_strDocColors |
CString, das der Text ist, der auf der Dokumentenfarbenschaltfläche angezeigt wird.Weitere Informationen finden Sie unter CMFCColorBar::SetDocumentColors. |
m_strOtherColor |
CString, das der Text ist, der auf der anderen Schaltfläche angezeigt wird.Weitere Informationen finden Sie unter CMFCColorBar::EnableOtherButton. |
Hinweise
Normalerweise erstellen Sie kein CMFCColorBar-Objekt direkt.Stattdessen erstellt CMFCColorMenuButton-Klasse (wird in Menüs und in den Symbolleisten) oder CMFCColorButton-Klasse das CMFCColorBar-Objekt.
Die CMFCColorBar-Klasse stellt die folgende Funktionalität:
Passt automatisch die Liste der Dokumentenfarben.
Rettet und stellt diesen Zustand, zusammen mit dem Dokumentenzustand wieder her.
Verwaltet die "auto" Schaltfläche.
Verwendet das CMFCColorPickerCtrl-Klasse-Steuerelement, um eine benutzerdefinierte Farbe auswählen.
Unterstützt einen "Tearoffen" Zustand (wenn sie erstellt wird, indem CMFCColorMenuButton-Klasse verwendet).
Um die CMFCColorBar-Funktionalität in die Anwendung enthalten:
Erstellen Sie eine reguläre Menütaste und weisen Sie eine ID, beispielsweise ID_CHAR_COLOR zu.
In der Rahmenfensterklasse überschreiben Sie die Methode CFrameWndEx::OnShowPopupMenu und ersetzen Sie die reguläre Menüschaltfläche durch ein Objekt CMFCColorMenuButton-Klasse (durch Aufrufen von CMFCToolBar::ReplaceButton).
Legen Sie alle Stile fest und aktivieren oder deaktivieren Sie die Funktionen des CMFCColorBar-Objekts während CMFCColorMenuButton-Klasse Erstellung.Das CMFCColorMenuButton-Objekt dynamisch erstellt das CMFCColorBar-Objekt, nachdem das Framework die CreatePopupMenu-Methode aufruft.
Wenn der Benutzer auf eine Farbleistensteuerschaltfläche klickt, verwendet das Framework ON_COMMAND-Makro, um das übergeordnete Element des Farbleistensteuerelements zu benachrichtigen.Im Makro ist der Befehls-ID-Parameter der Wert, den Sie der Farbleistensteuerschaltfläche in Schritt 1 zugewiesen haben ID_CHAR_COLOR (in diesem Beispiel).Weitere Informationen finden Sie in CMFCColorMenuButton-Klasse, CMFCColorButton-Klasse, CMFCColorPickerCtrl-Klasse, CFrameWndEx-Klasse und CMFCToolBar-Klasse-Klassen.
Beispiel
Das folgende Beispiel zeigt, wie eine Farbleiste konfiguriert, indem verschiedene Methoden in der CMFCColorBar-Klasse angewendet wird.Die Methoden legen das horizontale und vertikale Ränder fest, aktivieren die andere Schaltfläche, erstellen ein Farbleistensteuerfenster und legt die aktuell ausgewählte Farbe.Dieses Beispiel ist Teil Neue Kontrollprobe.
CMFCColorBar m_wndColorBar;
...
// set the margins
m_wndColorBar.SetHorzMargin(0);
m_wndColorBar.SetVertMargin(0);
// enable the display of a dialog box that
// lets the user select more colors
m_wndColorBar.EnableOtherButton(_T("Other..."));
// create a color bar control window
m_wndColorBar.CreateControl(this, rectColorBar, IDC_COLORBAR, 5 /* columns */);
// set the currently selected color
m_wndColorBar.SetColor(RGB(255, 0, 0));
Vererbungshierarchie
Anforderungen
Header: afxcolorbar.h