Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Probleme mit getmouse

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Colle



Anmeldungsdatum: 25.05.2007
Beiträge: 21

BeitragVerfasst am: 08.05.2008, 17:05    Titel: Probleme mit getmouse Antworten mit Zitat

Guten Abend da draußen! lächeln

Ich habe ein Problem, das im folgenden Programm steckt.

Code:

cls
screen 19,32

dim shared as integer button
dim shared as integer x,y


locate 2,3: print "Bild 1"


do
    getmouse x,y,,button
    if bit (button,0) then
       
        if x>0 and x<800 and y>0 and y<600 then
        locate 4,3: print "Bild 2"   
        end if
   
      if x>0 and x<800 and y>0 and y<600 then Exit Do
   
    end if
loop


do
    getmouse x,y,,button
    if bit (button,0) then
       
        if x>0 and x<800 and y>0 and y<600 then
        locate 8,3: print "Bild 3"
        end if
   
      if x>0 and x<800 and y>0 and y<600 then Exit Do
   
    end if
loop

sleep 1000
locate 10,3: print "Bild 4"
getkey


Wie man sehen kann, wird auf das Klicken in den Screen, der Text "Bild 2" angezeigt.
Gleichzeitig wird ebenfalls der Text "Bild 3" ausgegeben, obwohl dies erst auf einen erneuten Klick in den Screen geschehen sollte.
Wie muss ich den Code verändern, damit der Text "Bild 3" erst beim zweiten Klick in den Screen erscheint?


Danke im Voraus schonmal für eurer Interesse und Hilfe.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4704
Wohnort: ~/

BeitragVerfasst am: 08.05.2008, 17:40    Titel: Antworten mit Zitat

Warte zwischen den beiden DO-Schleifen auf das Loslassen der Maus.

Code:
do
    getmouse x,y,,button
    sleep 1
loop until not bit (button,0)

_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Colle



Anmeldungsdatum: 25.05.2007
Beiträge: 21

BeitragVerfasst am: 08.05.2008, 18:08    Titel: Antworten mit Zitat

Hallo nemored,
vielen Dank für deine schnelle Hilfe. lächeln
Dieses Problem ist damit erstmal vom Tisch.
Einen schönen Abend noch. lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
stevie1401



Anmeldungsdatum: 04.07.2006
Beiträge: 133

BeitragVerfasst am: 09.05.2008, 19:43    Titel: Antworten mit Zitat

Hallo Colle,

mache in Schleifen (do loop, while wend) unbedingt ein SLEEP 1 rein, da die CPU sonst auf 100% geht.

Stevie
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Colle



Anmeldungsdatum: 25.05.2007
Beiträge: 21

BeitragVerfasst am: 10.05.2008, 08:16    Titel: Antworten mit Zitat

Hallo stevie1401,
daran werde ich fortan denken.
Danke für den Hinweis.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
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.

 Impressum :: Datenschutz