| |
VB.NET - Ein- und UmsteigerRe: DrawString Überschneidungen | | | Autor: CALChris | Datum: 08.09.08 15:16 |
| ok vielen Dank...ja so hatte ich mir das auch gedacht... hatte nur gehofft jemand findet noch eine andere lösung, denn jetzt muss ich ziemlich viel schreiben :P
mfg | |
DrawString Überschneidungen | | | Autor: CALChris | Datum: 08.09.08 13:25 |
| Hi,
Ich habe ein Problem, und zwar arbeite ich gerade an einem Steuerelement das u.a Strings zeichnen muss.
Das mache ich mit der DrawString-Methode. Aber wenn der Benutzer z.B die Schriftgröße bzw. schriftart wechselt kann es zu überschneidungen der Strings kommen.
gegeben: vom gezeichneten String die X, Y Koordinate sowie Länge und Breite.
gesucht: Lösung :P
Das Hauptproblem ist das die Strings in einer For schleife gezeichnet werden.
etwa so:
[...]
Dim g As Graphics = e.Graphics
For i As Integer = 0 To 10000
g.DrawString(myStringarr(i), myFont, mybrush, X, Y)
Next
[...] Vielen Dank | |
Re: DrawString Überschneidungen | | | Autor: ProXy | Datum: 08.09.08 14:30 |
| Mit Hilfe von MeasureString (Drawing.2D), kannst du herausfinden, welche Grösse ein String in einer bestimmten Schriftart und Grösse hat. Danach kannst du die Ausgabe dann ja ausrichten! | |
Re: DrawString Überschneidungen | | | Autor: CALChris | Datum: 08.09.08 14:38 |
| Zitat: | |
gegeben: vom gezeichneten String die X, Y Koordinate sowie Länge und Breite.
| |
Wie gesagt, weiß ich die länge schon, nur weiß ich nicht wie ich das mit dem nicht zeichnen machen soll.
denn mit einem einfachen:
dim b as boolean
if überscheiden
if b
'zeichne
b = false
else
'zeichne nicht
b = true
end if
else
'normal zeichen
end if ist es nicht getan, denn es kann vorkommen das sich mehr als nur 2 strings überschneiden
mfg
Beitrag wurde zuletzt am 08.09.08 um 14:40:18 editiert. | |
Re: DrawString Überschneidungen | | | Autor: ProXy | Datum: 08.09.08 15:09 |
| Irgendwie verstehe ich das Problem wohl nicht richtig? Wie willst du die Strings schreiben? Untereinander? Du weisst doch x und y sowie die Höhe der Strings, also muss du jeden weiteren String doch nur an x sowie y + Höhe des vorigen Strings + beliebiger Abstand ausrichten. Definiere dir einen Punkt der nach jedem Zeichnen die Werte für den nächsten String enthält.
Punkt.x bleibt gleich
Punkt.y wird Punkt.y + String.height + beliebiger Abstand
Der nächste String wird dann an Position Punkt geschrieben.. | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevOutBar 4.0
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats Access-Tools Vol.1
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2024 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|