Feedback

C# - Einen "Text-Kasten" zeichnen

Veröffentlicht von am 16.02.2014
(0 Bewertungen)
Die untenstehende Methode zeichnet einfach einen Text-Kasten.
Parameter:
sText: Der Text
fText: Die Schriftart
cText: Die Textfarbe
cBox: Die Hintergrundfarbe der Box
cBorder: Die Farbe des Randes
iOuterBorderWidth: Die Breite des Randes in Pixel
iInnerBorderWidth: Der Abstand zwischen Text und äußerem Rand in Pixel
pLocation Der Punkt, an dem die Box gezeichnet werden soll (obere linke Ecke)
g: Die Graphics, auf die die Box gezeichnet wird.
GFU-Schulungen  [Anzeige]

C# Grundlagen

Die Schulung vermittelt Ihnen die Grundlagen von C# in der Arbeit mit Datentypen sowie bei Klassenbibliotheken. Sie lernen, mit Variablen umzugehen und deren verschiedene Formen zu konvertieren. 

XML und .NET Überblick

Um auf dem neuesten Wissensstand zu sein, sollten Sie unser aktuelles ASP .NET Komplett Seminar belegen.
Nach dem Seminar kennen Sie die wichtigsten Strömungen in der Software-Technologie

private void DrawStringBox(string sText, Font fText, Color cText, Color cBox, Color cBorder, int iOuterBorderWidth, int iInnerBorderWidth, Point pLocation, Graphics g)
{
    Point pBorder = pLocation;
    Point pBox = pLocation;
    Point pText = pLocation;

    pBox.Offset(iOuterBorderWidth, iOuterBorderWidth);
    pText.Offset(iOuterBorderWidth + iInnerBorderWidth, iOuterBorderWidth + iInnerBorderWidth);

    Size szText = TextRenderer.MeasureText(sText, fText);
    Size szBox = szText;
    Size szBorder = szText;

    szBox.Width += (2 * iInnerBorderWidth);
    szBox.Height += (2 * iInnerBorderWidth);

    szBorder.Width += (2 * iInnerBorderWidth) + (2 * iOuterBorderWidth);
    szBorder.Height += (2 * iInnerBorderWidth) + (2 * iOuterBorderWidth);

    g.FillRectangle(new SolidBrush(cBorder), new Rectangle(pBorder, szBorder));
    g.FillRectangle(new SolidBrush(cBox), new Rectangle(pBox, szBox));
    g.DrawString(sText, fText, new SolidBrush(cText), pText);
}
Abgelegt unter Text, Kasten, Box, zeichnen, draw.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!