vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 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
Pen als Parameter in Modul-Sub 
Autor: Streamfighter
Datum: 11.09.10 15:15

Hallo zusammen
ich habe festgestellt,dass ich sehr oft den gleichen code für verschiedene Projekte verwende, deshalb hab ich mir ein Modul gemacht das eine Ellypse mit den angegebenen paramteter zeichent.
damit ich auch die farbe variiren kann habe ich versucht den system.drawing.pen als parameter im Sub des Moduls zu verwenden das klappt aber nicht wenn ich den pen als Optional haben will

 
Module modul1  
Sub point(ByVal x%, ByVal y%, Optional ByVal pen As System.Drawing.Pen = _
  Pens.Blue)
        ...DrawEllipse(...pen,..x,y,..
   End Sub
end Module
Error: Konstanter ausdruck erforderlich

Wo ist das problem?

danke schonmal im vorraus
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Pen als Parameter in Modul-Sub 
Autor: Maas
Datum: 11.09.10 15:38

Eher so:
Public Class Class1
    Public Sub point(ByVal x As Integer, ByVal y As Integer, Optional ByVal pen _
      As System.Drawing.Pen = Nothing)
        Dim penVal As Pen = pen
        If penVal Is Nothing Then penVal = Pens.Blue
        '...
    End Sub
End Class
Ein Wert einer Eigenschaft(Pens.Blue) ist natürlich kein wirklich konstanter Ausdruck (für Klassen gibt es das auch nicht wirklich, deshalb Nothing). Du benutzt dann letztendlich penVal zum Zeichnen.
Auch solltest du Klassen benutzen, keine Module. Wir sind ja schließlich nicht mehr bei VB6.

Maas
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Pen als Parameter in Modul-Sub 
Autor: Streamfighter
Datum: 11.09.10 21:04

Hey danke
so gehts gute idee
man muss ihn halt bissle austricksen^^
Und danke für den Tipp mit den Klassen

Jetzt hätt ich noch ne Frage
im Modul hab ich ne Picturebox erstellt:
Sub PicBox()
        Dim P As New PictureBox
        With P
            .Visible = True
            .Dock = DockStyle.Fill
            .BackColor = Color.Black
        End With
        Form1.Controls.Add(P)
Das hat auch geklappt
1. Aber was mach ich wenn das Form nicht Form1 heisst?
2. Und wie kann ich die PictureBox p dann ausserhalb vom Modul refreshen?
mit p.refresh gings nicht

das wars dann auch mit doofen Fragen
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: Pen als Parameter in Modul-Sub 
Autor: Chris7483
Datum: 12.09.10 10:02

Du kannst der Sub einen Parameter übergeben.
Sub PicBox(ByVal frm As Form)
        Dim P As New PictureBox
        With P
            .Visible = True
            .Dock = DockStyle.Fill
            .BackColor = Color.Black
        End With
        frm.Controls.Add(P)
        frm.Refresh
End Sub
Gruß,
Chris

PS.: Es gibt keine doofen Fragen...
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