Forum: PC-Programmierung VB6 Prozeduren & Functionen


von SynC (Gast)


Angehängte Dateien:

Lesenswert?

ich programmiere schon eine weile als hobby in VB
nun ist der Tag gekommen an dem ich das erste mal Prozeduren
mit mehreren Parametern nutze

bei der deklarierung als Funktion/Prozedur geht noch alles glatt

in andren beiträgen fand ich noch
call procedure_name (a,b,c)  'call wird nicht akzeptiert

wenn ich die Prozedur normal aufrufe geschieht das selbe wie im bild
wenn ich nun die werte ohne klammern der Prozedur zuweise
dann sind beide Werte 0

von SynCaANS (Gast)


Lesenswert?

Hallo SynC,

die Paramter UpDown und XStart sind Typlos.

Sub SeedCube(Dim UpDown As Integer, ...)

oder ähnlich.

Grüße

von SynC (Gast)


Lesenswert?

Danke für die schnelle antwort
aber das problem besteht weiterhin

'Dim wird nich angenommen
'und mit ByVal bleibt der Fehler bestehen

such mich schon stunden grün und blau

kann das was an den Systemeinstellungen sein?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

VB sollte prinzipiell nur mit
1
Option Explicit

genutzt werden, da sonst Fehler kaschiert werden.

Wenn Du hier um Hilfe bittest, musst Du auch denen helfen, die Dir 
helfen sollen:

Poste Deinen Quelltext (als Text, keinen Screenshot!) und beschreibe die 
Fehlermeldungen genau, zitiere den Wortlaut!

von René K. (king)


Lesenswert?

Lasse einfach die Klammern beim Aufruf weg, also so:
1
Private Sub ProcedureTest_Click()
2
    SeedCube 0, 1275
3
End Sub

von SynC (Gast)


Lesenswert?

also nochmal von forne

gestetet hab ich jetzt folgendes

   - deklarierung der Prozedur

       Variante 1 : Sub ProcedureName (ByVal Var_1 as Byte, ByVal Var_2 
as  Integer)
       Variante 2 : Sub ProcedureName (Var_1, Var_2)

       Variante 3 : Call ProcedureName Var_1, Var_2 ' reagiert garnicht

       Variante 4 : Function FunctionName (ByVal Var_1 as Byte, ByVal 
Var_2 as Integer)

       Variante 5 : Function FunctionName (Var_1 ,Var_2)

   - Procedure-Aufruf per CommandButton_Click
       ProcedureName(Wert_1,Wert_2)
       'hier tritt der Fehler auf, "Fehler beim kompilieren, erwartet ="
       ProcedureName Wert_1, Wert_2
       'Wert_2 wird stehts als leer also Null übergeben

bin für jede hilfe dankbar
ich weiß das ich es umgehen kann indem ich den Wert in einer Globalen 
Variable hinterlege und diese dann in der Prozedur Nutze, aber das ist 
nicht sinn der sache, da die Prozedur teil einer Bibliothek wird

von SynC (Gast)


Lesenswert?

Rufus Τ. Firefly schrieb:
> Option Explicit

 verwende ich standardmäßig ^_^
dachte nich das das eine rolle spielt

von JojoS (Gast)


Lesenswert?

Die Variante 1 ist richtig und der Aufruf dann ohne Klammern (oder 
Aufruf mit 'call ProzedurName(a, b)' wenn ich mich recht erinnere).
Da passiert sicher vorher ein Fehler das die 2. Variable auf Null 
gesetzt wird oder gar nicht gesetzt wird. Setze doch einfach einen 
Breakpoint auf den Aufruf und gucke dir die Werte im Debugger an, in VB6 
ist das doch sehr bequem zu Testen.

von SynC (Gast)


Lesenswert?

es geht danke, hatte den rechner neu installiert und das #netframeworks 
update vergessen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.