vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 21:11

Dein Code funktioniert soweit ich getestet habe aber im zusammen spiel mit dem was ich schon habe ist irgend etwas falsch? Auf jeden Fall gibt es nicht immer das gleiche.

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 20:20

Hallo

Ich arbeite mit Visual Basic 2005 Express. Nun wollte ich mit der Grphics Methode einen Halbkreis mit Verlauf zeichnen. Dann hat er aber die obere Hälfte mit einem Verlauf gefüllt und die untere Hälfte mit einem Verlauf. Wie kann ich machen, dass er über das ganze Objekt den Verlauf zeichnet?
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As _
  System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
            ' Halbkreise mit Verlauf
            Dim oPieA As New Rectangle(x1, (y1 + ((y2 - y1) / 15)), (x2 - x1), ( _
              y2 - y1) / 2)
            Dim oBrushPieA As New LinearGradientBrush(oPieA, olor, Color2, _
            LinearGradientMode.Vertical)
 
            Dim g As Graphics = e.Graphics
            With PictureBox1
                g.FillPie(oBrushPieA, xPieStart, y1, PieWidth, (y2 - y1), 90, _
                  180)
            End With
End Sub
(Lasst euch nicht verwirren von den komischen Angaben über Position und Grösse.)

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 20:32

Also, die Hälfte der Angaben fehlt, aber wenn du das gleiche Viereck nimmst bei .DrawPie() als für dein Brush dann klappt's schon. Und bitte oBrushPieA.Dispose() nicht vergessen.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 20:45

Irgendwie doch nicht?
Fehler	1	Fehler bei der Überladungsauflösung, da keine zugreifbare "DrawPie" _
  mit diesen Argumenten aufgerufen werden kann: 
    'Public Sub DrawPie(pen As System.Drawing.Pen, x As Integer, y As Integer, 
    ' width As Integer, height As Integer, startAngle As Integer, sweepAngle As 
    ' Integer)': Der Wert vom Typ _
    "System.Drawing.Drawing2D.LinearGradientBrush" kann nicht zu _
    "System.Drawing.Pen" konvertiert werden.
    'Public Sub DrawPie(pen As System.Drawing.Pen, x As Single, y As Single, 
    ' width As Single, height As Single, startAngle As Single, sweepAngle As 
    ' Single)': Der Wert vom Typ "System.Drawing.Drawing2D.LinearGradientBrush" _
    kann nicht zu "System.Drawing.Pen" konvertiert werden.	F:\Dokumente und _
    Einstellungen\Bruno\Eigene Dateien\Visual _
    Studio\Projects\Üben\Üben\Form1.vb	178	17	Üben

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 20:46

So sieht's schön aus, z.B.
    Dim x1, y1, x2, y2 As Integer
 
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
        x1 = 0
        x2 = 300
        y1 = 0
        y2 = 300
        Dim oPieA As New Rectangle(x1, y1, x2 / 2, y2 / 2)
        Dim oPieA1 As New Rectangle(x1, y1, x2, y2)
        Dim oBrushPieA As New LinearGradientBrush(oPieA, Color.Purple, _
          Color.DarkSeaGreen, LinearGradientMode.Vertical)
        oBrushPieA.RotateTransform(90)
        Dim g As Graphics = e.Graphics
        With PictureBox1
            g.FillPie(oBrushPieA, oPieA1, 90, 180)
        End With
        oBrushPieA.Dispose()
    End Sub

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 21:21

Naja, deine Variablen und ihre Werte sind nicht definiert, ich weiss nicht genau was du erreichen willst. Ich habe nur ein wenig rumgespielt. (Eigentlich kann man LinearGradientMode.Horizontal benutzen und .RotateTransform() weglassen). Das Viereck für Brush bestimmt die Grenzen fürs Gradient, und Viereck für den Kreis bestimmt die Größe des Kreises (logisch, was?) Wenn beide nicht gleich sind siehst du nur einen Ausschnitt aus dem Gradient, oder es wird wiederholt ("getiled").

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 21:24

Ja, es wird "getiled" der Verlauf fängt igendwo oberhaulb an endet dann etwa in der mitte meines Halbkreises und fäng von neuem an?

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 21:27

Und wenn du das nicht willst musst du die Vierecke anders berechnen...

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 21:31

Hmm... Wie meinst du das anders? Muss ich andere Vierecke berechnen oder wie?

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 21:35

Ich denke schon. Es gibt aber auch .WrapMode wie WrapMode.TileFlipX (beim Brush), dann hast du keinen abrupten Übergang zwischen Farben.

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 21:51

Du kannst es dir mal anschauen. So siehts jetzt aus:http://fbieri.home.solnet.ch/Zwischenablage01.jpg

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 24.05.06 21:53

Ich möchte, dass es gleich aussieht wie im Rechteck rechts. Die weissen Flächen sind wieder andere Brushes.

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: ModeratorDaveS (Moderator)
Datum: 24.05.06 22:13

Also, es wäre hilfreich wenn du etwas mehr Code posten würdest, aber so in etwa sollte es vielleicht sein
        x1 = 0
        y1 = 0
        x2 = 120
        y2 = 30
 
        ' Halbkreise mit Verlauf
        Dim oPieA As New Rectangle(x1, y1, x2, y2 / 2)
        Dim oPieA1 As New Rectangle(x1, y1, x2 / 4, y2)
        Dim oPieA2 As New Rectangle(x1 + x2 / 8, y1, x2 - x2 / 8, y2)
 
        Dim oBrushPieA As New LinearGradientBrush(oPieA, Color.DarkSeaGreen, _
          Color.Purple, LinearGradientMode.Vertical)
        oBrushPieA.WrapMode = WrapMode.TileFlipX
        Dim g As Graphics = e.Graphics
        With PictureBox1
            g.FillPie(oBrushPieA, oPieA1, 90, 180)
            g.FillRectangle(oBrushPieA, oPieA2)
        End With
        oBrushPieA.Dispose()

________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 07:22

Danke Dave. Ich habe meinen Fehler gefunden. Ich hatte zuerst das oPieA deklariert und dort einiege Dimensionen eingegeben. Aber dann beim erstellen der Brushes habe ich weider andere Werte eingetragen. Beides zusammen konnte natürlich nicht gehen!

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: Wolf mit Schnuller
Datum: 25.05.06 07:46

was wird das denn für ein programm?

cu, Lukas

#######
ICQ: 192-576-074
http://codinglukas.co.funpic.de/

Wer fragt ist ein Narr - f?r 5 Minuten.
Wer nicht fragt ist ein Narr - sein Leben lang.
Quarks&Co

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 08:52

Das wird nicht wirklich ein Programm. Ich habe einfach eine Funktion gemacht, mit der man auf einer Picturebox ein Viereck aufziehen kann und dann zeichnet die Funktion einen Button. Zudem kannst du die Farbe wählen. http://fbieri.home.solnet.ch/Zwischenablage01.jpg

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: Wolf mit Schnuller
Datum: 25.05.06 13:00

ist ja ganz schön aufwendig so einen button zu zeichen musste ich erfahren.. ich brauch das derzeit auch für ein programm, nach einiger zeit herumbasteln sieht es bei mir jetzt so aus: http://img150.imageshack.us/img150/7043/balk9tx.png

cu, Lukas

#######
ICQ: 192-576-074
http://codinglukas.co.funpic.de/

Wer fragt ist ein Narr - f?r 5 Minuten.
Wer nicht fragt ist ein Narr - sein Leben lang.
Quarks&Co

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 13:42

Sieht toll aus!

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 14:02

Sieht toll aus!

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: GPM
Datum: 25.05.06 14:13

Hier ein einfacher kleiner Button
Imports System.Drawing.Drawing2D
Public Class Form1
    Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As _
      System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
        Dim re As New Rectangle(20, 20, 150, 50)
        Dim lb As LinearGradientBrush = New LinearGradientBrush(New Rectangle( _
          20, 20, 150, 25), _
        Color.Green, Color.Gold, LinearGradientMode.Vertical)
        lb.WrapMode = WrapMode.TileFlipX
        With e.Graphics
            .Clear(Color.Black)
            .SmoothingMode = Drawing2D.SmoothingMode.HighQuality
            .TextRenderingHint = Drawing.Text.TextRenderingHint.ClearTypeGridFit
            .FillEllipse(lb, re)
            .DrawEllipse(New Pen(Color.Red, 4), re)
            .DrawString("Start", New Font("Arial", 20), Brushes.Blue, 65, 30)
        End With
        lb.Dispose()
    End Sub
End Class
MfG GPM
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: Wolf mit Schnuller
Datum: 25.05.06 14:42



beim zeichnen und füllen selbst lag ja gar nicht das problem, was mir etwas probleme machte waren die abgerundeten ecken des rechtecks, da ist schon noch etwas mehr als nur .FillEllipse nötig (eigentlich ja nur 2 kreise und ein rechteck obendrüber, aber ich wollte das mie FillPie machen und damit bin ich noch nicht so wirklich zurechtgekomen )

bis es so aussieht wie bei viperbone muss ich aber noch etwas arbeiten... hat noch nicht diesen angedeuteten aus-dem-bildschirm-heraus-komm-effekt

cu, Lukas

#######
ICQ: 192-576-074
http://codinglukas.co.funpic.de/

Wer fragt ist ein Narr - f?r 5 Minuten.
Wer nicht fragt ist ein Narr - sein Leben lang.
Quarks&Co

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 14:45

Ich kann dir den Code mailen wenn du willst.

fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: Wolf mit Schnuller
Datum: 25.05.06 16:34

ich glaube das wird nicht nötig sein die farbe macht`s...

cu, Lukas

#######
ICQ: 192-576-074
http://codinglukas.co.funpic.de/

Wer fragt ist ein Narr - f?r 5 Minuten.
Wer nicht fragt ist ein Narr - sein Leben lang.
Quarks&Co

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Halbkreis mit Verlauf 
Autor: viperbone
Datum: 25.05.06 16:42


fg viperbone

Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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