Nasıl yapılır: Görsel Stilde Öğe İşleme
Ad System.Windows.Forms.VisualStyles alanı, VisualStyleElement görsel stilleri tarafından desteklenen Windows arabirimi (UI) öğelerini temsil eden nesneleri gösterir. Bu konu başlığında, sınıfını kullanarak uygulamanın Oturum Kapatma ve Kapatma VisualStyleRendererVisualStyleElementVisualStyleElementVisualStyleRenderer Başlat menüsü.
Görsel stil öğesini işlemek için
oluşturun VisualStyleRenderer ve çizmek istediğiniz öğeye ayarlayın. özelliğinin ve yönteminin kullanımını unutmayın; görsel stilleri devre dışı bırakılırsa veya bir öğe tanımsızsa oluşturucu Application.RenderWithVisualStylesVisualStyleRenderer.IsElementDefined bir özel durum VisualStyleRenderer oluşturur.
private: VisualStyleRenderer^ renderer; VisualStyleElement^ element; public: CustomControl() { this->Location = Point(50, 50); this->Size = System::Drawing::Size(200, 200); this->BackColor = SystemColors::ActiveBorder; this->element = VisualStyleElement::StartPanel::LogOffButtons::Normal; if (Application::RenderWithVisualStyles && VisualStyleRenderer::IsElementDefined(element)) { renderer = gcnew VisualStyleRenderer(element); } }private VisualStyleRenderer renderer = null; private readonly VisualStyleElement element = VisualStyleElement.StartPanel.LogOffButtons.Normal; public CustomControl() { this.Location = new Point(50, 50); this.Size = new Size(200, 200); this.BackColor = SystemColors.ActiveBorder; if (Application.RenderWithVisualStyles && VisualStyleRenderer.IsElementDefined(element)) { renderer = new VisualStyleRenderer(element); } }Private renderer As VisualStyleRenderer = Nothing Private element As VisualStyleElement = _ VisualStyleElement.StartPanel.LogOffButtons.Normal Public Sub New() Me.Location = New Point(50, 50) Me.Size = New Size(200, 200) Me.BackColor = SystemColors.ActiveBorder If Application.RenderWithVisualStyles And _ VisualStyleRenderer.IsElementDefined(element) Then renderer = New VisualStyleRenderer(element) End If End SubŞu DrawBackground anda temsil ettiği öğeyi işlemek için VisualStyleRenderer yöntemini çağırma.
protected: virtual void OnPaint(PaintEventArgs^ e) override { // Draw the element if the renderer has been set. if (renderer != nullptr) { renderer->DrawBackground(e->Graphics, this->ClientRectangle); } // Visual styles are disabled or the element is undefined, // so just draw a message. else { this->Text = "Visual styles are disabled."; TextRenderer::DrawText(e->Graphics, this->Text, this->Font, Point(0, 0), this->ForeColor); } }protected override void OnPaint(PaintEventArgs e) { // Draw the element if the renderer has been set. if (renderer != null) { renderer.DrawBackground(e.Graphics, this.ClientRectangle); } // Visual styles are disabled or the element is undefined, // so just draw a message. else { this.Text = "Visual styles are disabled."; TextRenderer.DrawText(e.Graphics, this.Text, this.Font, new Point(0, 0), this.ForeColor); } }Protected Overrides Sub OnPaint(ByVal e As PaintEventArgs) ' Draw the element if the renderer has been set. If (renderer IsNot Nothing) Then renderer.DrawBackground(e.Graphics, Me.ClientRectangle) ' Visual styles are disabled or the element is undefined, ' so just draw a message. Else Me.Text = "Visual styles are disabled." TextRenderer.DrawText(e.Graphics, Me.Text, Me.Font, _ New Point(0, 0), Me.ForeColor) End If End Sub
Kod Derleniyor
Bu örnek şunları gerektirir:
sınıfından türetilen özel bir Control denetim.
Özel Form denetimi barındıran bir.
, , System ve System.DrawingSystem.Windows.Forms ad System.Windows.Forms.VisualStyles alanlarına başvurular.