Sdílet prostřednictvím


ProgressBarRenderer.DrawVerticalChunks(Graphics, Rectangle) Metoda

Definice

Nakreslí sadu částí indikátoru průběhu, které vyplňují svislý indikátor průběhu.

public:
 static void DrawVerticalChunks(System::Drawing::Graphics ^ g, System::Drawing::Rectangle bounds);
public static void DrawVerticalChunks (System.Drawing.Graphics g, System.Drawing.Rectangle bounds);
static member DrawVerticalChunks : System.Drawing.Graphics * System.Drawing.Rectangle -> unit
Public Shared Sub DrawVerticalChunks (g As Graphics, bounds As Rectangle)

Parametry

g
Graphics

Slouží Graphics k nakreslení indikátoru průběhu.

bounds
Rectangle

Určuje Rectangle hranice, které mají být vyplněny indikátorem průběhu.

Výjimky

Operační systém nepodporuje vizuální styly.

-nebo-

Vizuální styly jsou zakázány uživatelem v operačním systému.

-nebo-

Vizuální styly nejsou použity v klientské oblasti oken aplikací.

Příklady

Následující příklad kódu používá metodu DrawVerticalChunks v obslužné rutině Timer.Tick události k vykreslení každého přírůstku indikátoru průběhu. Tento příklad kódu je součástí většího příkladu ProgressBarRenderer pro třídu .

    // Handle the timer tick; draw each progressively larger rectangle.
private:
    void progressTimer_Tick(Object^ myObject, EventArgs^ e)
    {
        if (ticks < NumberChunks)
        {
            Graphics^ g = this->CreateGraphics();
            ProgressBarRenderer::DrawVerticalChunks(g,
                progressBarRectangles[ticks]);
            ticks++;
        }
        else
        {
            progressTimer->Enabled = false;
        }
    }
// Handle the timer tick; draw each progressively larger rectangle.
private void progressTimer_Tick(Object myObject, EventArgs e)
{
    if (ticks < NumberChunks)
    {
        using (Graphics g = this.CreateGraphics())
        {
            ProgressBarRenderer.DrawVerticalChunks(g,
                progressBarRectangles[ticks]);
            ticks++;
        }
    }
    else
    {
        progressTimer.Enabled = false;
    }
}
' Handle the timer tick; draw each progressively larger rectangle.
Private Sub progressTimer_Tick(ByVal myObject As [Object], ByVal e As EventArgs) 
    If ticks < NumberChunks Then
        Dim g As Graphics = Me.CreateGraphics()
        Try
            ProgressBarRenderer.DrawVerticalChunks(g, progressBarRectangles(ticks))
            ticks += 1
        Finally
            g.Dispose()
        End Try
    Else
        progressTimer.Enabled = False
    End If

End Sub

Poznámky

Každý indikátor průběhu nakreslený touto metodou pokrývá šířku parametru bounds . Počet nakreslených úsecích průběhu je určen výškou bounds a hodnotami vrácenými pomocí ChunkSpaceThickness a ChunkThickness.

Před použitím této metody byste měli ověřit, že IsSupported vlastnost vrací true.

Platí pro