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:

Ruckel....
Gehe zu Seite 1, 2  Weiter
 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 11.11.2004, 18:02    Titel: Ruckel.... Antworten mit Zitat

Also, ich hab da so ein Problem, ich hab diesen Code:
Code:
DECLARE SUB Haupt ()
DECLARE SUB MouseDriver (AX%, bx%, CX%, DX%)
DECLARE FUNCTION MouseInit% ()
DECLARE SUB mouseshow ()
DECLARE SUB mousestatus (lb%, Rb%, Xmouse%, Ymouse%)
DECLARE SUB STICKS (Joyx%, JOYY%, BUT1%, BUt2%, BUT3%)
DIM SHARED mouse$
RESTORE
mouse$ = SPACE$(57)
FOR I% = 1 TO 57
  READ A$
  H$ = CHR$(VAL("&H" + A$))
  MID$(mouse$, I%, 1) = H$
NEXT I%
DATA 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
DATA 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
DATA 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
DATA 8B,5E,06,89,17,5D,CA,08,00
CLS

MS% = MouseInit%
IF NOT MS% THEN
  PRINT "Mouse not found": LET AMOUSE$ = "NO":


END IF
LET AMOUSE$ = "YES"
mouseshow
Haupt

SUB Haupt
DO
mousestatus Xmouse%, Ymouse%
CIRCLE ((Xmouse%), (Ymouse%)), 10, 3
LOOP
END SUB

SUB MouseDriver (AX%, bx%, CX%, DX%)
  DEF SEG = VARSEG(mouse$)
  mouse% = SADD(mouse$)
  CALL Absolute(AX%, bx%, CX%, DX%, mouse%)
END SUB

SUB MouseHide
 AX% = 2
 MouseDriver AX%, 0, 0, 0
END SUB

FUNCTION MouseInit%
  AX% = 0
  MouseDriver AX%, 0, 0, 0
  MouseInit% = AX%

END FUNCTION

SUB MousePut
  AX% = 4
  CX% = X%
  DX% = Y%
  MouseDriver AX%, 0, CX%, DX%
END SUB

SUB mousestatus (lb%, Rb%, Xmouse%, Ymouse%)
  AX% = 3
  MouseDriver AX%, bx%, CX%, DX%
  lb% = ((bx% AND 1) <> 0)
  Rb% = ((bx% AND 2) <> 0)
  Xmouse% = CX%
  Ymouse% = DX%
END SUB

SUB STICKS (Joyx%, JOYY%, BUT1%, BUt2%, BUT3%)
Joyx% = STICK(0)
JOYY% = STICK(1)

BUT1% = STRIG(1)
BUt2% = STRIG(5)
BUT3% = STRIG(7)
END SUB


Es geht nur um des Sub Haupt.
Da hab ich jetzt nen Kreis der mit dem zeiger mit geht, wenn ich jetzt aber versuch ihn mit cls zu löschen so dass keine spur entsteht flimmert es logischerweise. Wie mach ich dass es nicht flimmert, ich hab auch schon probiert dass der bildschirm nur gelöscht wird wenn die maus sich bewegt, geht aber auch nich. Könnt ihr mit mal wieder helfen(wie schon so oft)?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Kai Bareis



Anmeldungsdatum: 10.09.2004
Beiträge: 545
Wohnort: Baden Würtemberg

BeitragVerfasst am: 11.11.2004, 18:53    Titel: Antworten mit Zitat

Mit welchem screen arbeitest du eigentlich?
_________________
MfG Kai Bareis
Es ist noch kein Meister vom Himmel gefallen! Warum einfach wens auch umständlich geht!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 11.11.2004, 21:23    Titel: Antworten mit Zitat

Das Problem ist ganz einfach. du rufst MausStatus mit nur 2 Parametern auf! du musst in der Haupt-sub einfach "MouseStatus taste1, taste2, mousex, mousey" aufrufen, dann geht das. happy
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 12.11.2004, 16:06    Titel: Antworten mit Zitat

hä?
also einfach
Code:
Sub Haupt
Do
mousestatus lb%, Rb%, Xmouse%, ymouse$
Circle ((Xmouse%), (Ymouse%))
CLS
Loop

oder wie???


Zuletzt bearbeitet von Killos am 12.11.2004, 16:12, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 12.11.2004, 16:11    Titel: Antworten mit Zitat

Versuchs mal hiermit...
Der Hintergrund wird in BackGround% gespeichert.
(der alte Bildschirm wird nur dann wiederhergestellt, wenn sich die Maus auch bewegt hat.)
Code:

SUB Haupt
oldXmouse% = -1
oldYmouse% = -1
DIM BackGround%(0 TO 10000) 'Den Wert musst du angleichen
DO
mousestatus Xmouse%, Ymouse%
IF NOT oldXmouse% = Xmouse% OR NOT oldYmouse% = Ymouse% THEN
IF NOT oldxmouse% = -1 THEN PUT(oldXmouse%, oldYmouse%), BackGround%, PSET
oldXmouse% = Xmouse%
oldYmouse% = Ymouse%
GET(Xmouse% - 10, Ymouse%- 10)-(Xmouse% + 10, Ymouse% + 10), BackGround%
CIRCLE (Xmouse%, Ymouse%), 10, 3
END IF
LOOP
END SUB


Habs nicht getestet, müsste aber gehen.
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 12.11.2004, 16:24    Titel: Antworten mit Zitat

So, ich hab im Internet jetzt nen Code gefunden (unten) bei dem als Maus ein ausgemaltes vireckiges Kästchen gezeigt wird. Jetzt möcht ich aber einen kreis als maus und kein kästchen, aber wie???

hier is der code:
Code:
DECLARE SUB MouseDriver (AX%, bx%, CX%, DX%)
DECLARE FUNCTION MouseInit% ()
DECLARE SUB mouseshow ()
DECLARE SUB mousestatus (lb%, RB%, Xmouse%, Ymouse%)
DECLARE SUB STICKS (Joyx%, JOYY%, BUT1%, BUt2%, BUT3%)
DIM SHARED mouse$
RESTORE
mouse$ = SPACE$(57)
FOR I% = 1 TO 57
  READ A$
  H$ = CHR$(VAL("&H" + A$))
  MID$(mouse$, I%, 1) = H$
NEXT I%
DATA 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
DATA 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
DATA 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
DATA 8B,5E,06,89,17,5D,CA,08,00
CLS

MS% = MouseInit%
IF NOT MS% THEN
  PRINT "Mouse not found": LET AMOUSE$ = "NO":


END IF
mouseshow
DO
mousestatus lb%, RB%, Xmouse%, Ymouse%
LOOP

SUB MouseDriver (AX%, bx%, CX%, DX%)
  DEF SEG = VARSEG(mouse$)
  mouse% = SADD(mouse$)
  CALL Absolute(AX%, bx%, CX%, DX%, mouse%)
END SUB

SUB MouseHide
 AX% = 2
 MouseDriver AX%, 0, 0, 0
END SUB

FUNCTION MouseInit%
  AX% = 0
  MouseDriver AX%, 0, 0, 0
  MouseInit% = AX%

END FUNCTION

SUB MousePut
  AX% = 4
  CX% = X%
  DX% = Y%
  MouseDriver AX%, 0, CX%, DX%
END SUB

SUB mouseshow
  AX% = 1
  MouseDriver AX%, 0, 0, 0
END SUB

SUB mousestatus (lb%, RB%, Xmouse%, Ymouse%)
  AX% = 3
  MouseDriver AX%, bx%, CX%, DX%
  lb% = ((bx% AND 1) <> 0)
  RB% = ((bx% AND 2) <> 0)
  Xmouse% = CX%
  Ymouse% = DX%
END SUB

SUB STICKS (Joyx%, JOYY%, BUT1%, BUt2%, BUT3%)
Joyx% = STICK(0)
JOYY% = STICK(1)

BUT1% = STRIG(1)
BUt2% = STRIG(5)
BUT3% = STRIG(7)
END SUB

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 12.11.2004, 16:42    Titel: Antworten mit Zitat

Aso bei DEM Code dürfte eigentlich garnix angezeigt werden.
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Sebastian
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 5969
Wohnort: Deutschland

BeitragVerfasst am: 12.11.2004, 19:32    Titel: Vielleicht doch Antworten mit Zitat

Hallo.

Vielleicht steckt das Viereck im Data-Block als ASM-Programm...

Viele Grüße!
Sebastian
_________________

Der Markt regelt das! | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 12.11.2004, 19:59    Titel: Antworten mit Zitat

doch, es wird der zeiger angezeigt, der auch bei der programmieroberfläche von qb 4.5 angezeigt wird!
ich verzweifel noch...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 12.11.2004, 22:05    Titel: Antworten mit Zitat

also mal so: Nimm die MausDEU.bas aus dem Rundum-sorglos-mauspaket von Qbasic.de
dann machst du den Code hier:
Code:
'normale Mausinitialisierungen, kannst du kopieren
SCREEN 12
radius = 10
DIM hintergrund(4*radius*radius)

DO
 MouseStatus b1,b2,x,y
 GET (x-radius,y-radius)-STEP(2*radius,2*radius), hintergrund
 CIRCLE x,y,radius
 t=timer
 do:loop until t <> timer
 PUT (x-radius,y-radius), hintergrund, PSET
LOOP

das könnte gehen. Die Subs brauchst du natürlich auch alle, die schreib ich aber ned ab zwinkern
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 12.11.2004, 22:51    Titel: Antworten mit Zitat

Achsoo !
Ja im SCREEN 0 kannste doch natürlich keine grafischen Mauscursor benutzen !! Der ist nur für Text vorgesehen.
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 12.11.2004, 22:53    Titel: Antworten mit Zitat

Ich kann nur MisterD zustimmen, nimm das sorglos-Paket
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 13.11.2004, 12:10    Titel: Antworten mit Zitat

Also, ich habs jetzt so gemacht wie ihrs gesagt habt, geht aber trotzdem nich... ...kommt jetzt halt en Kreis aber immer noch ne linie, also nich durchgezogen sondern unregelmäsig...
hier nochmal der umgschriebene code:
Code:
'***************************************************************************
' MouseDeu.bas - Maustreiber fuer QBasic und QuickBasic fuer alle SCREENs
' ==========================================================================
' Dieser Maustreiber stammt von einem unbekannten Programmierer. Er eignet
' sich im Prinzip fuer alle SCREENS inklusive den Textbildschirm SCREEN 0.
' Ausfuehrliche deutsche Kommentare eingefuegt von Thomas Antoni
'
'
'   \         (c) Thomas Antoni, 1.11.02 - 4.11.02
'    \ /\           Mailto:thomas@antonis.de
'    ( )            www.antonis.de  --- www.qbasic.de
'  .( o ).
'              ----==== Hottest QBasic Stuff on Earth !!! ====----
'
'***************************************************************************

'-------------------------- Maus-Routinen ----------------------------------
DECLARE SUB MouseDriver (AX%, bx%, CX%, DX%)
   'Maustreiber, wird nur von anderen SUBs, nicht v. Hauptprogr. aufgerufen
DECLARE SUB MouseHide ()
   'Mauszeiger unsichtbar machen
DECLARE FUNCTION MouseInit% ()
   'Maus initialisieren, liefert -1 zurueck, wenn Maus gefunden
DECLARE SUB MousePut (x%, y%)
   'Mauszeiger an den Koordinaten X%/Y% anzeigen
DECLARE SUB MouseShow ()
   'Mauszeiger in der Bildschirm-Mitte sichtbar machen
DECLARE SUB MouseStatus (lb%, Rb%, Xmouse%, Ymouse%)
   'Tasten-Status und Mauskoordinaten abfragen  (LB% / RB% = -1 wenn
   'Linke / Rechte Maustaste gedrueckt)

'---------- Maschinensprache-Code fuer Maustreiber erstellen ----------------
DIM SHARED mouse$
RESTORE
mouse$ = SPACE$(57) 'Maschinensprache-Code als String in mouse$ hinterlegen
FOR I% = 1 TO 57
  READ A$
  H$ = CHR$(VAL("&H" + A$))
  MID$(mouse$, I%, 1) = H$
NEXT I%
'Maschinensprache-Befehle (57 Bytes)
DATA 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
DATA 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
DATA 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
DATA 8B,5E,06,89,17,5D,CA,08,00

'--------- Maus initialisieren und anzeigen, ob Maus gefunden --------------
CLS
MS% = MouseInit%
IF MS% THEN
  PRINT "Maus gefunden und initialisiert"
ELSE
  PRINT "Maus nicht gefunden": SLEEP: END
END IF

'-------- Mauszeiger in Bildschirm-Mitte anzeigen --------------------------
MouseShow

'-------- Maus testen und Status anzeigen -----------------------------------
'normale Mausinitialisierungen, kannst du kopieren
SCREEN 12
radius = 10
DIM hintergrund(4 * radius * radius)
DO
 MouseStatus lb%, Rb%, Xmouse%, Ymouse%
 GET ((Xmouse%) - radius, (Ymouse%) - radius)-STEP(2 * radius, 2 * radius), hintergrund
 CIRCLE ((Xmouse%), (Ymouse%)), radius
 t = TIMER
 DO: LOOP UNTIL t <> TIMER
 PUT ((Xmouse%) - 5, Ymouse% - 5), hintergrund, PSET
LOOP

SUB MouseDriver (AX%, bx%, CX%, DX%)
'----------------------- Maustreiber aufrufen ------------------------------
DEF SEG = VARSEG(mouse$)
  mouse% = SADD(mouse$)
  CALL Absolute(AX%, bx%, CX%, DX%, mouse%)
END SUB

SUB MouseHide
'----------------- Mauszeiger unsichtbar machen -----------------------------
 AX% = 2
 CALL MouseDriver(AX%, 0, 0, 0)
END SUB

FUNCTION MouseInit%
'----------- Maus initialisieren ----------------------------------------
AX% = 0
  CALL MouseDriver(AX%, 0, 0, 0)
  MouseInit% = AX% '-1 falls Maus gefunden, 0 falls Maus nicht gefunden
END FUNCTION

SUB MousePut (x%, y%)
'------------ Mauszeiger auf die Koordinaten X%/Y% setzen  -----------------
  AX% = 4
  CX% = x%
  DX% = y%
  CALL MouseDriver(AX%, 0, CX%, DX%)
END SUB

SUB MouseShow
'--------------- Mauszeiger in Bildschirmmitte sichtbar machen -------------
AX% = 1
  CALL MouseDriver(AX%, 0, 0, 0)
END SUB

SUB MouseStatus (lb%, Rb%, Xmouse%, Ymouse%)
'---------------- Mausposition und Tastenstatus ermitteln ------------------
AX% = 3
  MouseDriver AX%, bx%, CX%, DX%
  lb% = ((bx% AND 1) <> 0) '-1 / 0 = linke Taste gedrueckt / nicht gedrueckt
  Rb% = ((bx% AND 2) <> 0) ' dito fuer rechte Maustaste
  Xmouse% = CX%
  Ymouse% = DX%
END SUB

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 13.11.2004, 12:19    Titel: Antworten mit Zitat

Jetzt versuche mal - wie du's beim ersten Beispiel schon ausprobiert hast - den Kreis nur dann neu zu zeichnen, wenn sich die Koordinaten des Mauszeigers ändern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 13.11.2004, 12:57    Titel: Antworten mit Zitat

Also, ich hab alles von hier noch mal probiert, hab aber nichts hingekriegt...
Kann mir nich jemand ein funktionierendes baispiel schreiben???
bitte, ich brauchs nämlich dringend...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Paul
aka ICC, HV-Freak


Anmeldungsdatum: 11.09.2004
Beiträge: 588
Wohnort: Uelzen

BeitragVerfasst am: 13.11.2004, 16:07    Titel: Antworten mit Zitat

argh !
Ich hab doch oben schon nen Beispielcode dazu gemacht !!!
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 13.11.2004, 16:46    Titel: Antworten mit Zitat

Hallo

Das folgende basiert auch auf einem Beispiel von qbasic.de. Ich hab's etwas um- und einen Kreis als Cursor eingebaut, der die Farben entsprechend den Tastendrücken ändert. Der Hintergrund ist etwas doof, aber soll auch nur zeigen, dass er wieder hergestellt wird. Läuft bei mir absolut flimmer- und streifenfrei.

Code:

DECLARE FUNCTION MouseInit% ()
DECLARE SUB MouseStatus (Lb%, Rb%, xMouse%, yMouse%)
DECLARE SUB MouseRange (X1%, Y1%, x2%, Y2%)
DECLARE SUB MouseDriver (ax%, bx%, cx%, dx%)
DEFINT A-Z: DEF SEG = &HA000:
DIM SHARED mouse$: mouse$ = SPACE$(57)
DIM bild%(500)
KEY(1) ON
ON KEY(1) GOSUB raus
SCREEN 12
GOSUB hintergrund
f% = 3
fm% = f%
FOR I% = 1 TO 57:  READ a$:  H$ = CHR$(VAL("&H" + a$))
MID$(mouse$, I%, 1) = H$: NEXT I%
DATA 55,89,E5,8B,5E,0C,8B,07,50,8B,5E,0A,8B,07,50,8B
DATA 5E,08,8B,0F,8B,5E,06,8B,17,5B,58,1E,07,CD,33,53
DATA 8B,5E,0C,89,07,58,8B,5E,0A,89,07,8B,5E,08,89,0F
DATA 8B,5E,06,89,17,5D,CA,08,00

RESTORE
ms% = MouseInit%
IF NOT ms% THEN
  PRINT "Mouse not found"
  END
END IF
MouseRange 10, 10, 629, 469
MouseStatus l%, r%, x%, y%
GET (x% - 10, y% - 10)-(x% + 10, y% + 10), bild%
xm% = x%
ym% = y%
GOSUB kreis
DO
 MouseStatus l%, r%, x%, y%
 f = 3
 IF l% = -1 THEN f = 12
 IF r% = -1 THEN f = 14
 IF l% = -1 AND r% = -1 THEN f = 1
 IF x% <> xm% OR y% <> ym% THEN GOSUB kreis
 IF f% <> fm% THEN fm% = f%: GOSUB kreis
LOOP
raus:
END

kreis:
   PUT (xm% - 10, ym% - 10), bild%, PSET
   GET (x% - 10, y% - 10)-(x% + 10, y% + 10), bild%
   CIRCLE (x%, y%), 10, f
   xm% = x%
   ym% = y%
RETURN

hintergrund:
CLS
RANDOMIZE TIMER
FOR a = 1 TO 10
xa = RND * 640
ya = RND * 480
xb = RND * 640
yb = RND * 480
f = 6 + FIX(RND * 2) * 2
LINE (xa, ya)-(xb, yb), f, BF
NEXT
RETURN

DEFLNG A-Z
SUB MouseDriver (ax%, bx%, cx%, dx%)
  DEF SEG = VARSEG(mouse$)
  mouse% = SADD(mouse$)
  CALL Absolute(ax%, bx%, cx%, dx%, mouse%)
END SUB

FUNCTION MouseInit%
  ax% = 0
  MouseDriver ax%, 0, 0, 0
  MouseInit% = ax%
END FUNCTION

SUB MouseRange (X1%, Y1%, x2%, Y2%)
  ax% = 7
  cx% = X1%
  dx% = x2%
MouseDriver ax%, 0, cx%, dx%
  ax% = 8
  cx% = Y1%
  dx% = Y2%
  MouseDriver ax%, 0, cx%, dx%
END SUB

SUB MouseStatus (Lb%, Rb%, xMouse%, yMouse%)
  ax% = 3
  MouseDriver ax%, bx%, cx%, dx%
  Lb% = ((bx% AND 1) <> 0)
  Rb% = ((bx% AND 2) <> 0)
  xMouse% = cx%
  yMouse% = dx%
END SUB



Vielleicht kannst du damit was anfangen.

Gruss
Skilltronic


Zuletzt bearbeitet von Skilltronic am 13.11.2004, 17:30, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
MisterD



Anmeldungsdatum: 10.09.2004
Beiträge: 3071
Wohnort: bei Darmstadt

BeitragVerfasst am: 13.11.2004, 17:12    Titel: Antworten mit Zitat

Also nur mal so: Wenn du nur einen Kreis machen willst darfst du nicht MouseShow schreiben, da dann der normale Zeiger erscheint!
_________________
"It is practically impossible to teach good programming to students that have had a prior exposure to BASIC: as potential programmers they are mentally mutilated beyond hope of regeneration."
Edsger W. Dijkstra
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Killos



Anmeldungsdatum: 12.09.2004
Beiträge: 31

BeitragVerfasst am: 13.11.2004, 17:27    Titel: Antworten mit Zitat

@skill tronic vielen dank, dass hab ich gebraucht
@all hierposters danke
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden MSN Messenger
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 13.11.2004, 17:39    Titel: Antworten mit Zitat

MisterD hat Folgendes geschrieben:
Also nur mal so: Wenn du nur einen Kreis machen willst darfst du nicht MouseShow schreiben, da dann der normale Zeiger erscheint!


@MisterD: Klar - das war's. Ich hab' mir den Originalcode nicht richtig angesehen. verlegen

Genauso kann man in meinem Programm die SUB MouseHide weglassen. Ist ja sonst doppelt gemoppelt. Hab das Beispiel auch schon entsprechend editiert.

@Killos: Bitteschön !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Gehe zu Seite 1, 2  Weiter
Seite 1 von 2

 
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