ERLEDIGT
JA
JA
ANTWORTEN
4
4
ZUGRIFFE
382
382
EMPFEHLEN
-
Hallo!
Kennt jemand ein gutes Tutorial in dem beschrieben wird wie man (ohne Bilder!) eine Form z.B. an den Ecken abrundet? Also so wie z.B. beim MSN Messanger? Oder auch komplexere Formen wie beim Windows Media Player?
Danke schonmal.
-
14.06.05 17:06 #2
- Registriert seit
- Aug 2001
- Ort
- Österreich, Stmk, Graz
- Beiträge
- 2.783
Hi.
Dieser Artikel auf CodeProject ist sicher ein guter Anfang.
A Shaped Windows Form Application with Variable Opacity
MfG,
AlexWith the first link the chain is forged. The first speech censored, the first thought forbidden, the first freedom denied, chains us all irrevocably.
Aaron Satie
Legends... are the spice of the universe, Mr. Data, because they have a way of sometimes coming true.
Captain Jean-Luc Picard, Stardate ~41294.5
Tutorials.de chattet. Hier gibts auch .net Support ^^
Klickt auf chattet und nutzt den Webchat, oder verbindet euch zu irc.tutorials.de - Channel #Tutorials.de
(moo)blog furred.net // SiteInfo für WP7 // Pastebin für WP7 // BlogEngine.net Extensions
-
Das weiss ich schon wie das geht, trotzdem Danke!
Mein Problem ist, dass dieser Code:
nicht so funktioniert wie ich willCode :1 2 3 4 5 6 7 8 9 10 11 12 13
[size=2][color=#0000ff]Dim[/color][/size][size=2] shape [/size][size=2][color=#0000ff]As[/color][/size][size=2] [/size][size=2][color=#0000ff]New[/color][/size][size=2] System.Drawing.Drawing2D.GraphicsPath() [/size][size=2]shape.AddEllipse(0, 0, 20, 20) shape.AddEllipse([/size][size=2][color=#0000ff]Me[/color][/size][size=2].Width - 20, 0, 20, 20) shape.AddEllipse(0, [/size][size=2][color=#0000ff]Me[/color][/size][size=2].Height - 20, 20, 20) shape.AddEllipse([/size][size=2][color=#0000ff]Me[/color][/size][size=2].Width - 20, [/size][size=2][color=#0000ff]Me[/color][/size][size=2].Height - 20, 20, 20) [/size][size=2][color=#0000ff]Me[/color][/size][size=2].Region = [/size][size=2][color=#0000ff]New[/color][/size][size=2] System.Drawing.Region(shape) [/size]
.
Ich wollte halt an den 4 Ecken jeweils eine Ellipse zeichnen, und dann dazwischen mit Rechtecken ausfüllen.
Leider scheint dort, wo sich die Ellipsen mit dem Rechteck überschneiden der Hintergrund, sprich die Form durch.
-
Hallo!
Mit ein bisschen Überlegen Hab' ich's geschafft. Ich poste morgen hier den Code, für den Interessierten.
-
So hier der Code:
Zuerst einen GraphicsPath erstellen:
Dim shapePath AsNew GraphicsPath(FillMode.Winding)
Dann kann man mit verschiedenen Methoden einen Pfad erstellen. Exemplarisch hier mal ein abgerundetes Rechteck:
' Ecke links oben
shapePath.AddArc(0, 0, 10, 10, 180, 90)
' Ecke rechts oben
shapePath.AddArc(Me.Width - 10, 0, 10, 10, 270, 90)
'Ecke unten rechts
shapePath.AddArc(Me.Width - 10, Me.Height - 30, 10, 10, 0, 90)
' Ecke unten links
shapePath.AddArc(0, Me.Height - 30, 10, 10, 90, 90)
Die Linien zwischen den "Viertel-Kreisen" braucht man nicht anzugeben, mit dem Parameter True der Funktion "AddPath" wird der Pfad automatishc geschlossen. Nur sollte man auf die richtige Reihenfolge im Code achten, sonst kommt eine modernes Kunstwerk raus.
Jetzt muss nur noch die sogenannte Region der Form ausgeschnitten werden:
Dim shape AsNew GraphicsPath()
shape.AddPath(shapePath, True)
Me.Region = New System.Drawing.Region(shape)
Ähnliche Themen
-
Form.KeyPreview - Kein KeyDown nach Form.Close() oder Form.Hide() *Argh*
Von Christian Kusmanow im Forum .NET Windows FormsAntworten: 4Letzter Beitrag: 28.03.06, 14:56 -
form enctype='multipart/form-data' und form action=index2.php method='post'
Von Binio im Forum PHPAntworten: 4Letzter Beitrag: 06.08.05, 05:24 -
shaped popup
Von cargo im Forum Flash PlattformAntworten: 1Letzter Beitrag: 17.06.05, 20:50 -
StickyAd + Shaped PopUp
Von Chernoby im Forum Javascript & AjaxAntworten: 8Letzter Beitrag: 07.04.04, 09:35 -
[C++] Shaped Windows ohne Borland?
Von IKEAFREAX im Forum C/C++Antworten: 6Letzter Beitrag: 14.11.02, 15:16





Zitieren

Login





