 |
Das deutsche QBasic- und FreeBASIC-Forum Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Wels
Anmeldungsdatum: 26.01.2007 Beiträge: 3
|
Verfasst am: 26.01.2007, 22:35 Titel: ermitteln ob Taste gedrückt ist |
|
|
hi
ich weis es gibt mehrere andere threads dazu, aber keiner hat meine Frage richtig beantwortet.
Also ich möchte über den LPT-Port eine Relaiskarte steuern.
Dazu soll der Benutzer mit den Pfeiltasten die einzelnen Relais ansteuern.
Wie kann ich also ohne mega-aufwand mit den Pfeiltasten durch gedrückt halten steuern?
Bsp.:
der Benutzer hält "->" gedrückt, solange soll der Relais geschlossen sein.
sobald der Benutzer die taste loslässt soll der Relais wieder offen sein.
thx für eure Hilfe!
MfG
Wels
PS.: stellt euch einfach vor ich wollte mit dem Prog einen Motor nach links oder nach rechts drehen. _________________ Wer anderen eine Grube gräbt, fällt selbst hinein,
kann aber auch Bestatter sein. |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 26.01.2007, 23:06 Titel: |
|
|
Code: |
do
if multikey(72) then 'kommando, wenn nach oben gedrückt
if multikey(75) then 'kommando, wenn nach links gedrückt
if multikey(77) then 'kommando, wenn nach rechts gedrückt
if multikey(80) then 'kommando, wenn nach unten gedrückt
loop until multikey(1) 'Esc zum abbrechen
|
...alles klar?  _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
Wels
Anmeldungsdatum: 26.01.2007 Beiträge: 3
|
Verfasst am: 26.01.2007, 23:24 Titel: |
|
|
naja folgendes prob:
wenn ich das ausführen will beschwert er sich über folgendes:
"Illegal outside a compound statement, found: 'LOOP'"
und zwar hat er (is ja auch klar) wohl damit:
loop until multikey(1)
seine probleme!
habs auchn paar mal umgeändert, tat sich nix  _________________ Wer anderen eine Grube gräbt, fällt selbst hinein,
kann aber auch Bestatter sein. |
|
Nach oben |
|
 |
ytwinky

Anmeldungsdatum: 28.05.2005 Beiträge: 2624 Wohnort: Machteburch
|
Verfasst am: 26.01.2007, 23:30 Titel: |
|
|
Jojo hat Folgendes geschrieben: | Code: |
do
if multikey(72) then 'kommando, wenn nach oben gedrückt
if multikey(75) then 'kommando, wenn nach links gedrückt
if multikey(77) then 'kommando, wenn nach rechts gedrückt
if multikey(80) then 'kommando, wenn nach unten gedrückt
loop until multikey(1) 'Esc zum abbrechen
|
...alles klar?  | ..die Kommentare, die mit 'kommando. wenn nach..
mußt du natürlich mit deinen Anweisungen ersetzen, denn sonst ist die erste
if-Anweisung nicht abgeschlossen, weil das End If fehlt und FB meldet völlig korrekt:
"Illegal outside a compound statement, found: 'LOOP'"
Achso, ich vergaß:
Und wenn du mehr als eine Anweisung ausführen möchtest, dann sieht das so aus: Code: | if multikey(72) then
?"multikey(72) gedrückt.."
?"Hier könnte ein anderer Befehl ausgeführt werden.."
End If | ..ich überlasse es deinem programmiertechnischen Sachverstand,
diese Angaben auf die anderen If-Anweisungen zu übertragen..
Das wird aber auch in der Befehlsreferenz beschrieben.. _________________
v1ctor hat Folgendes geschrieben: | Yeah, i like INPUT$(n) as much as PRINT USING.. | ..also ungefähr so, wie ich GOTO..
Zuletzt bearbeitet von ytwinky am 26.01.2007, 23:37, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Wels
Anmeldungsdatum: 26.01.2007 Beiträge: 3
|
Verfasst am: 26.01.2007, 23:37 Titel: |
|
|
oh man wie recht du mit dem hast!
naja trotzdem danke jetz funzts (hatte end if bei jedem dings vergessen!) _________________ Wer anderen eine Grube gräbt, fällt selbst hinein,
kann aber auch Bestatter sein. |
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|