WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   kleines VB Problem.... (http://www.wcm.at/forum/showthread.php?t=18785)

renew 09.04.2001 21:01

Wie kann ich es machen das wenn ich mit einer InputBox werte eingeben will, wenn der User dann auf abbrechen klickt, das ich keinen Laufzeitfehler bekomme. Ich nehm einmal an ich muss ihn zu einem Fehler "zwingen" damit er dann den dbErrHandler(oder wie immer der bei euch heißt;)) fortsetzt. Sollte doch so gehen, oder:
Abbrechen-Button.CancelError = True ' Erzwingt einen Fehler
on Error GoTo dbErrHandler

dbErrHandler: blablabla

Aber wie mache ich es die Abbrechen Schaltfläche anzusprechen? Wie ist der Objektname?

thx, für eute Antworten....

Jaguar 10.04.2001 01:12

Du mußt das mit einem Errorhandler machen. Anders gehts nicht. Wenn du sonst schon einen anderen Errorhandler hast dann setze eine Zeile vor dem Aufruf einen speziellen für die Inputbox.
Ist zwar alles andere als schön strukturiert, geht aber nicht anders. Execeptions kommen ja erst in der nächsten VB-Version.

Beispiel:
sub beispiel()

on error goto beispiel_error
...
...
on error goto beispiel_inbox_error
x = inbox("bla bla" ...... usw
on error goto beispiel_error
...
...

beispiel_inbox_error:
'Abbrechen wurde gedrückt
..
exit sub

beispiel_error:
'restlichen fehler abfangen

end sub

Galileo 10.04.2001 14:26

sollte auch gehen wenn du diese variable die in die inputbox eingegeben wird als Variant dimensionierst.


renew 11.04.2001 13:01

Hab noch eine Frage: Wie kann ich etwas in die nächste Zeile schreiben? Sei es jetzt bei einer MsgBox oder wenn ich Daten in eine Textdatei schreibe. Hab noch nichts gefunden was das bewerkstelligt.

Jaguar 11.04.2001 15:18

indem du das richtige steuerzeichen in den string einfügst:
zb.
MsgBox "hallo!" & Chr(13) & "Wie gehts?"


renew 11.04.2001 15:28

danke Jaguar! unter C hätt ichs ja gewusst(da wärs "\n" ;)), aber ich hab nirgends was gefunden für VB. Nicht einmal in der Library.....

renew 11.04.2001 21:17

Und mir fällt noch eine Frage ein: wie bekomm ich wenn ich z.B. einen Button drücke den Coursor auf ein bestimmtes Textfeld, wo ich dann gleich was eingeben kann, ohne das ich erst mit der Maus hinklicken muss?

Jaguar 11.04.2001 22:40

feld.setfocus

James020 11.04.2001 23:01

@Jaguar:Weils´t es grad erwähnt hast (chr$(13)) wo ist der Unterschied zwischen 10 und 13? Und warum steht in TXT-Dateien beide?
z.B.:
hallo[10|13]
Nexte Zeile[10|13]
U.s.w.[10|13]

Ich mein eines der SteuerZeichen reicht doch oder?

Neben bei: Ich bin ein professioneller QBasic-Anwendre und steige gerade nach VBasic um (fast) alles kein Problem, doch PRINT(?!?) Objeckt.PRINT ? HÄ?!? Kann mir das bitte wer erklären? (+/- Line, usw . . .)

Jaguar 11.04.2001 23:18

soviel aus der MSDN:

* *Die Werte 8, 9, 10 und 13 werden in Rückschritt-, Tabulator-, Zeilenvorschub- und Wagenrücklaufzeichen umgewandelt. Sie können nicht grafisch dargestellt werden, beeinflussen aber (in Abhängigkeit von der Anwendung) die Anzeige von Text auf dem Bildschirm.


Das mit dem print? Prinzipiel hast in VB einen "objektorientierten Ansatz" .. (volle OOP erst ab der nächsten Version). d.h. wennst jetzt ein Objekt hast dann stellt das eine Methode print zu Verfügung.

Sonst noch Fragen?


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:57 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag