 |
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 |
Sannaj
Anmeldungsdatum: 19.12.2010 Beiträge: 35
|
Verfasst am: 19.12.2010, 17:33 Titel: Mausabfrage funktioniert nicht wie gewünscht. |
|
|
Ich möchte ein Objekt so gestalten das es bei einem Klick sein aussehen ändert. Und bei einem zweiten Klick wieder in den Ursprungszustand zurückkehrt. Damit die Funktion in einer Schleife nicht ununterbrochen die Zustände wechselt, solange man klickt, habe ich eine Sperrfunktion eingebaut, sodass der Zustand erst dann wieder wechselt, sobald man die Maustaste loslasst. Leider gibt die verwendete Funktion getmouse in Kurzen Abständen neben dem gepressten Button auch Button-nicht-gepresst zurück, sodass die Funktion nicht richtig funktioniert.
Vielleicht kann mir da jemand helfen. Ich benutzte fbc für Windows. Version 0.21.1 mit -lang fb (anderen gehen nicht weil ich auch OOP benutzte.) |
|
Nach oben |
|
 |
MisterD

Anmeldungsdatum: 10.09.2004 Beiträge: 3071 Wohnort: bei Darmstadt
|
Verfasst am: 19.12.2010, 18:44 Titel: |
|
|
vielleicht hat deine maus einen wackelkontakt? Poste mal deinen source code damit andere leute das überprüfen können und dir sagen können wo dein fehler ist. _________________ "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 |
|
 |
Sannaj
Anmeldungsdatum: 19.12.2010 Beiträge: 35
|
Verfasst am: 19.12.2010, 18:53 Titel: |
|
|
Das wird lang.
Hier der Sourcecode:
Code: |
' sgGUI Teil 2: Check boxes
' Version 1.0
' von Sannaj 18.12.2010
'
' Eine Check box hat folgende Eigenschaften (properties):
'
' Name Type Bedeutung
' x uinteger x-Coordinate der linken oberen Labelecke.
' y uinteger y-Coordinate der linken oberen Labelecke.
' checked byte Gibt an ob die Check box abgeharkt ist, (0 = Nein, -1 = Ja, andere Zuweisungen werden durch -1 ersetzt)
' enabled byte Gibt an ob die Check box veränderbar ist, (0 = Nein, -1 = Ja, andere Zuweisungen werden durch -1 ersetzt)
' visible byte Sichtbarkeitsstatus des Labels (0 = Unsichtbar, -1 = Sichtbar, andere Zuweisungen werden durch -1 ersetzt))
'
' Hinweise:
' Eine Check box wird mit "dim labelname as sgCheckBox" definiert.
' Nach der Initiialisierung liegt ist die auf (0/0) veränderbar, unsichtbar, unabgeharkt und mit der Beschriftung: "New Check box" versehen.
' Bitte zuerst lokalisieren und dann erst sichtbar machen.
' Bitte nicht über andere Objekte legen wenn beide sichtbar sind.
' Palette Setup
palette 6, 64, 64, 64 ' Dunkelgelb mit Schwarzgrau (hier dunkelgrau genannt) überschreiben
palette 11, 201, 201, 201 ' Hellcykan mit Weißgrau überschreiben
' Procedurdelarationen
declare sub sgCheckBoxDraw(text as string, xol as uinteger, yol as uinteger, isChecked as byte = 0, isEnabled as byte = -1)
declare sub sgCheckBoxUndraw(text as string, xol as uinteger, yol as uinteger)
dim shared sgCheckBoxClickActionAllreadyDone as byte = 0
' Declariere Check box UDT
type sgCheckBox
declare property x(new_x as uinteger)
declare property x() as uinteger
declare property y(new_y as uinteger)
declare property y() as uinteger
declare property value(new_value as string)
declare property value() as string
declare property checked(new_value as byte)
declare property checked() as byte
declare property enabled(new_value as byte)
declare property enabled() as byte
declare property visible(new_value as byte)
declare property visible() as byte
declare sub clicked()
declare sub setup(new_x as uinteger, new_y as uinteger, new_value as string, new_checked as byte = 0, new_visible as byte = -1)
private:
locx as uinteger
locy as uinteger
locvalue as string = "New Check box"
locchecked as byte
locenabled as byte = -1
locvis as byte
end type
' Testsektor
screen 12
palette 6, 64, 64, 64 ' Dunkelgelb mit Schwarzgrau (hier dunkelgrau genannt) überschreiben
palette 11, 201, 201, 201 ' Hellcykan mit Weißgrau überschreiben
paint (1, 1), 7 'Hellgrauer Hintergrund
dim testbox as sgCheckBox
testbox.setup(56, 67, "Click here!")
dim as integer mouseButtons, mouseX, mouseY
do
do
sleep 1 ' Prozessor entlasten
getmouse(mouseX, mouseY ,, mouseButtons) ' Prüft ob die Maus geklickt worden ist
if inkey = "q" then
end ' q terminiert das Programm
end if
loop until (mouseButtons and 1) and mouseX <> -1 ' Solange warten bis die Maus im Fenster geklickt wird
draw string (1, 1), "Klick erkannt"
draw string (1, 10), "Unklick da.", 7
testbox.clicked()
do
getmouse(mouseX, mouseY , mouseButtons) ' Prüft ob die Maus geklickt worden ist
sleep 1 ' Prozessor entlasten
if inkey = "q" then
end ' q terminiert das Programm
end if
loop until (not (mouseButtons and 1)) and mouseX <> -1 ' Solange warten bis die Maus im Fenster nicht mehr.
draw string (1, 1), "Klick erkannt", 7
draw string (1, 10), "Unklick da."
loop
/'testbox.x = 65
testbox.y = testbox.x
testbox.visible = 1
sleep
testbox.checked = 1
testbox.value = "Hallo Welt"
sleep'/
property sgCheckBox.x(new_x as uinteger)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(this.locvalue, new_x, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locx = new_x ' x aktualisieren
end property
property sgCheckBox.x() as uinteger ' Auf Anfrage kann x auch ausgegeben werden
return this.locx
end property
property sgCheckBox.y(new_y as uinteger)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(this.locvalue, this.locx, new_y, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locy = new_y ' y aktualisieren
end property
property sgCheckBox.y() as uinteger ' Auf Anfrage kann y auch ausgegeben werden
return this.locy
end property
property sgCheckBox.value(new_value as string)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(new_value, this.locx, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locvalue = new_value ' Beschriftung aktualisieren
end property
property sgCheckBox.value() as string ' Auf Anfrage kann die Beschriftung auch ausgegeben werden
return this.locvalue
end property
property sgCheckBox.checked(new_value as byte)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
new_value, this.locenabled) ' Neues Object zeichnen.
end if
if new_value = 0 then
this.locchecked = 0 ' y aktualisieren
else
this.locchecked = -1
end if
end property
property sgCheckBox.checked() as byte ' Auf Anfrage kann der Abhackungsstatus auch ausgegeben werden
return this.locchecked
end property
property sgCheckBox.enabled(new_value as byte)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
this.locchecked, new_value) ' Neues Object zeichnen.
end if
if new_value = 0 then
this.locenabled = 0 ' y aktualisieren
else
this.locenabled = -1
end if
end property
property sgCheckBox.enabled() as byte ' Auf Anfrage kann die Änderbarkeit auch ausgegeben werden
return this.locenabled
end property
property sgCheckBox.visible(new_value as byte)
if new_value = 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
this.locvis = 0 ' Sichtbarkeit aktualisieren (unsichtbar = false = 0)
else
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
this.locvis = -1 ' Sichtbarkeit aktualisieren (sichtbar = true = -1)
end if
end property
property sgCheckBox.visible() as byte ' Auf Anfrage kann die Sichtbarkeit auch ausgegeben werden
return this.locvis
end property
sub sgCheckBox.clicked()
dim as integer mouseX, mouseY, mouseButtons
if GetMouse(mouseX, mouseY, , mouseButtons) <> 0 and this.locenabled <> 0 then ' Mauseigenschaften einlesen und prüfen ob ein Fehler passiert ist (Rückgabe <> 0)
else
if (mouseButtons and 1) then ' Prüfen ob die Linke Maustaste gedrückt worden ist.
if mouseX > this.locx and mouseX < this.locx + 20 + len(this.locvalue)*8 and _
mouseY > this.locy and mouseY < this.locy + 16 and this.locenabled <> 0 then ' Kontroliert ob die Maus auf der Check box und ob die aktion nicht schon ausgeführt worden ist.
if this.locchecked = 0 then
this.checked = -1
else
this.checked = 0
end if
draw string (1,100), "Änderung sollte gesehen." & time
end if
end if
end if
end sub
sub sgCheckBox.setup(new_x as uinteger, new_y as uinteger, new_value as string, new_checked as byte = 0, new_visible as byte = -1)
this.x = new_x
this.y = new_y
this.value = new_value
this.checked = new_checked
this.visible = new_visible
end sub
sub sgCheckBoxDraw(text as string, xol as uinteger, yol as uinteger, isChecked as byte = 0, isEnabled as byte = -1)
'line (xol, yol)-(xol + 10,yol + 10)
'Kästchen zeichnen
dim as integer schwarz, dunkelgrau, mittelgrau, hellgrau, weiss, weissgrau
' Farben zuordnen
schwarz = 0
dunkelgrau = 6
mittelgrau = 8
hellgrau = 7
weiss = 15
weissgrau = 11
' Rahmen
line (xol,yol + 2)-(xol + 11,yol + 2), dunkelgrau
line (xol,yol + 2)-(xol ,yol + 12), dunkelgrau
pset (xol ,yol + 12), mittelgrau
pset (xol + 10,yol + 2), mittelgrau
line ((xol + 1), yol + 13)-(xol + 11, yol + 13), hellgrau
line (xol + 11, (yol + 3))-(xol + 11, yol + 13), hellgrau
' Button ausmalen und Text eintragen.
if isEnabled <> 0 then
line (xol + 1, yol + 2 + 1)-(xol + 10, yol + 2 + 10), weiss, bf
else
line (xol + 1, yol + 2 + 1)-(xol + 10, yol + 2 + 10), weissgrau, bf
end if
' Hacken rein, wenn gewünscht.
if isChecked <> 0 then
if isEnabled <> 0 then ' Steuerbare Harken in schwarz
pset (xol + 3, yol + 8), schwarz
pset (xol + 3, yol + 9), schwarz
pset (xol + 2, yol + 9), schwarz
line (xol + 3, yol + 10)-(xol + 8, yol + 5), schwarz
line (xol + 4, yol + 10)-(xol + 8, yol + 6), schwarz
line (xol + 4, yol + 11)-(xol + 9, yol + 6), schwarz
else ' Andere Harken in mittelgrau.
pset (xol + 3, yol + 8), mittelgrau
pset (xol + 3, yol + 9), mittelgrau
pset (xol + 2, yol + 9), mittelgrau
line (xol + 3, yol + 10)-(xol + 8, yol + 5), mittelgrau
line (xol + 4, yol + 10)-(xol + 8, yol + 6), mittelgrau
line (xol + 4, yol + 11)-(xol + 9, yol + 6), mittelgrau
end if
end if
draw string (xol + 20, yol), text, schwarz
end sub
sub sgCheckBoxUndraw(text as string, xol as uinteger, yol as uinteger)
dim as integer hellgrau
' Farben zuordnen
hellgrau = 7
' Rahmen
line (xol,yol + 2)-(xol + 11, yol + 13), hellgrau ' Kästchen überzeichnen
draw string (xol + 20, yol), text, hellgrau ' Text überschreiben
end sub
|
Ok, das wars. Schau mal ob du das Problem ausmachen kannst. |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4704 Wohnort: ~/
|
Verfasst am: 19.12.2010, 19:24 Titel: |
|
|
Das Problem liegt bei NOT (mouseButtons AND 1). Wenn die linke Maustaste gedrückt ist, ist mouseButtons AND 1 gleich 1, und NOT 1 ist -2, also wahr. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
Nach oben |
|
 |
Sannaj
Anmeldungsdatum: 19.12.2010 Beiträge: 35
|
Verfasst am: 19.12.2010, 19:33 Titel: |
|
|
Danke für deine Hilfe.
Wie kann ich das umschreiben damits funktionerert?
Zuletzt bearbeitet von Sannaj am 19.12.2010, 19:39, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
XOR
Anmeldungsdatum: 23.07.2010 Beiträge: 161
|
Verfasst am: 19.12.2010, 19:36 Titel: |
|
|
Habe die Hauptschleife und sgCheckBox.clicked() veraendert.
Ich habe es so gemacht, das man die Buttonstellung vom vorigen Fram mit der jetzigen vergleicht. Wenn sie sich unterscheiden wurde die Maustaste losgelassen/gedrueckt.
Code: |
' sgGUI Teil 2: Check boxes
' Version 1.0
' von Sannaj 18.12.2010
'
' Eine Check box hat folgende Eigenschaften (properties):
'
' Name Type Bedeutung
' x uinteger x-Coordinate der linken oberen Labelecke.
' y uinteger y-Coordinate der linken oberen Labelecke.
' checked byte Gibt an ob die Check box abgeharkt ist, (0 = Nein, -1 = Ja, andere Zuweisungen werden durch -1 ersetzt)
' enabled byte Gibt an ob die Check box veränderbar ist, (0 = Nein, -1 = Ja, andere Zuweisungen werden durch -1 ersetzt)
' visible byte Sichtbarkeitsstatus des Labels (0 = Unsichtbar, -1 = Sichtbar, andere Zuweisungen werden durch -1 ersetzt))
'
' Hinweise:
' Eine Check box wird mit "dim labelname as sgCheckBox" definiert.
' Nach der Initiialisierung liegt ist die auf (0/0) veränderbar, unsichtbar, unabgeharkt und mit der Beschriftung: "New Check box" versehen.
' Bitte zuerst lokalisieren und dann erst sichtbar machen.
' Bitte nicht über andere Objekte legen wenn beide sichtbar sind.
' Palette Setup
palette 6, 64, 64, 64 ' Dunkelgelb mit Schwarzgrau (hier dunkelgrau genannt) überschreiben
palette 11, 201, 201, 201 ' Hellcykan mit Weißgrau überschreiben
Type TMouse
X As Integer
Y As Integer
B As Integer
BA As Integer
W As Integer
End Type
' Procedurdelarationen
declare sub sgCheckBoxDraw(text as string, xol as uinteger, yol as uinteger, isChecked as byte = 0, isEnabled as byte = -1)
declare sub sgCheckBoxUndraw(text as string, xol as uinteger, yol as uinteger)
dim shared sgCheckBoxClickActionAllreadyDone as byte = 0
Dim Shared Mouse As TMouse
' Declariere Check box UDT
type sgCheckBox
declare property x(new_x as uinteger)
declare property x() as uinteger
declare property y(new_y as uinteger)
declare property y() as uinteger
declare property value(new_value as string)
declare property value() as string
declare property checked(new_value as byte)
declare property checked() as byte
declare property enabled(new_value as byte)
declare property enabled() as byte
declare property visible(new_value as byte)
declare property visible() as byte
declare sub clicked()
declare sub setup(new_x as uinteger, new_y as uinteger, new_value as string, new_checked as byte = 0, new_visible as byte = -1)
private:
locx as uinteger
locy as uinteger
locvalue as string = "New Check box"
locchecked as byte
locenabled as byte = -1
locvis as byte
end type
' Testsektor
screen 12
palette 6, 64, 64, 64 ' Dunkelgelb mit Schwarzgrau (hier dunkelgrau genannt) überschreiben
palette 11, 201, 201, 201 ' Hellcykan mit Weißgrau überschreiben
paint (1, 1), 7 'Hellgrauer Hintergrund
dim testbox as sgCheckBox
testbox.setup(56, 67, "Click here!")
do
GetMouse(mouse.X, mouse.Y ,mouse.W , mouse.B) ' Prüft ob die Maus geklickt worden ist
If inkey = "q" then
End ' q terminiert das Programm
End If
If mouse.B <> mouse.BA And mouse.B = 1 Then
testbox.clicked()
EndIf
mouse.BA = mouse.B
Loop
/'testbox.x = 65
testbox.y = testbox.x
testbox.visible = 1
sleep
testbox.checked = 1
testbox.value = "Hallo Welt"
sleep'/
property sgCheckBox.x(new_x as uinteger)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(this.locvalue, new_x, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locx = new_x ' x aktualisieren
end property
property sgCheckBox.x() as uinteger ' Auf Anfrage kann x auch ausgegeben werden
return this.locx
end property
property sgCheckBox.y(new_y as uinteger)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(this.locvalue, this.locx, new_y, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locy = new_y ' y aktualisieren
end property
property sgCheckBox.y() as uinteger ' Auf Anfrage kann y auch ausgegeben werden
return this.locy
end property
property sgCheckBox.value(new_value as string)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
sgcheckBoxDraw(new_value, this.locx, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
end if
this.locvalue = new_value ' Beschriftung aktualisieren
end property
property sgCheckBox.value() as string ' Auf Anfrage kann die Beschriftung auch ausgegeben werden
return this.locvalue
end property
property sgCheckBox.checked(new_value as byte)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
new_value, this.locenabled) ' Neues Object zeichnen.
end if
if new_value = 0 then
this.locchecked = 0 ' y aktualisieren
else
this.locchecked = -1
end if
end property
property sgCheckBox.checked() as byte ' Auf Anfrage kann der Abhackungsstatus auch ausgegeben werden
return this.locchecked
end property
property sgCheckBox.enabled(new_value as byte)
if this.locvis <> 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
this.locchecked, new_value) ' Neues Object zeichnen.
end if
if new_value = 0 then
this.locenabled = 0 ' y aktualisieren
else
this.locenabled = -1
end if
end property
property sgCheckBox.enabled() as byte ' Auf Anfrage kann die Änderbarkeit auch ausgegeben werden
return this.locenabled
end property
property sgCheckBox.visible(new_value as byte)
if new_value = 0 then ' Nur bei Sichtbarkeit Neuzeichnen
sgCheckBoxUndraw(this.locvalue, this.locx, this.locy)' Altes Object löschen.
this.locvis = 0 ' Sichtbarkeit aktualisieren (unsichtbar = false = 0)
else
sgcheckBoxDraw(this.locvalue, this.locx, this.locy, _
this.locchecked, this.locenabled) ' Neues Object zeichnen.
this.locvis = -1 ' Sichtbarkeit aktualisieren (sichtbar = true = -1)
end if
end property
property sgCheckBox.visible() as byte ' Auf Anfrage kann die Sichtbarkeit auch ausgegeben werden
return this.locvis
end property
sub sgCheckBox.clicked()
if (mouse.B And 1) then ' Prüfen ob die Linke Maustaste gedrückt worden ist.
If mouse.X > this.locx and mouse.X < this.locx + 20 + len(this.locvalue)*8 and _
mouse.Y > this.locy and mouse.Y < this.locy + 16 and this.locenabled <> 0 then ' Kontroliert ob die Maus auf der Check box und ob die aktion nicht schon ausgeführt worden ist.
If this.locchecked = 0 then
this.checked = -1
Else
this.checked = 0
End if
Draw string (1,100), "Änderung sollte gesehen." & time
End if
End If
End sub
sub sgCheckBox.setup(new_x as uinteger, new_y as uinteger, new_value as string, new_checked as byte = 0, new_visible as byte = -1)
this.x = new_x
this.y = new_y
this.value = new_value
this.checked = new_checked
this.visible = new_visible
end sub
sub sgCheckBoxDraw(text as string, xol as uinteger, yol as uinteger, isChecked as byte = 0, isEnabled as byte = -1)
'line (xol, yol)-(xol + 10,yol + 10)
'Kästchen zeichnen
dim as integer schwarz, dunkelgrau, mittelgrau, hellgrau, weiss, weissgrau
' Farben zuordnen
schwarz = 0
dunkelgrau = 6
mittelgrau = 8
hellgrau = 7
weiss = 15
weissgrau = 11
' Rahmen
line (xol,yol + 2)-(xol + 11,yol + 2), dunkelgrau
line (xol,yol + 2)-(xol ,yol + 12), dunkelgrau
pset (xol ,yol + 12), mittelgrau
pset (xol + 10,yol + 2), mittelgrau
line ((xol + 1), yol + 13)-(xol + 11, yol + 13), hellgrau
line (xol + 11, (yol + 3))-(xol + 11, yol + 13), hellgrau
' Button ausmalen und Text eintragen.
if isEnabled <> 0 then
line (xol + 1, yol + 2 + 1)-(xol + 10, yol + 2 + 10), weiss, bf
else
line (xol + 1, yol + 2 + 1)-(xol + 10, yol + 2 + 10), weissgrau, bf
end if
' Hacken rein, wenn gewünscht.
if isChecked <> 0 then
if isEnabled <> 0 then ' Steuerbare Harken in schwarz
pset (xol + 3, yol + 8), schwarz
pset (xol + 3, yol + 9), schwarz
pset (xol + 2, yol + 9), schwarz
line (xol + 3, yol + 10)-(xol + 8, yol + 5), schwarz
line (xol + 4, yol + 10)-(xol + 8, yol + 6), schwarz
line (xol + 4, yol + 11)-(xol + 9, yol + 6), schwarz
else ' Andere Harken in mittelgrau.
pset (xol + 3, yol + 8), mittelgrau
pset (xol + 3, yol + 9), mittelgrau
pset (xol + 2, yol + 9), mittelgrau
line (xol + 3, yol + 10)-(xol + 8, yol + 5), mittelgrau
line (xol + 4, yol + 10)-(xol + 8, yol + 6), mittelgrau
line (xol + 4, yol + 11)-(xol + 9, yol + 6), mittelgrau
end if
end if
draw string (xol + 20, yol), text, schwarz
end sub
sub sgCheckBoxUndraw(text as string, xol as uinteger, yol as uinteger)
dim as integer hellgrau
' Farben zuordnen
hellgrau = 7
' Rahmen
line (xol,yol + 2)-(xol + 11, yol + 13), hellgrau ' Kästchen überzeichnen
draw string (xol + 20, yol), text, hellgrau ' Text überschreiben
end sub
|
Bei mir functioniert es |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4704 Wohnort: ~/
|
Verfasst am: 19.12.2010, 19:41 Titel: |
|
|
Ansonsten kannst du ein
Code: | loop until ((mouseButtons and 1) = 0) and mouseX <> -1 ' Solange warten bis die Maus im Fenster nicht mehr.
|
verwenden. Obwohl die Überprüfung von mouseX <> -1 wahrscheinlich nicht nötig ist - denn dann wäre ja auch mouseButtons = -1 und mouseButtons AND 1 = 1
edit: irgendwas stimmt noch nicht, aber ich muss noch suchen. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Zuletzt bearbeitet von nemored am 19.12.2010, 19:45, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Sannaj
Anmeldungsdatum: 19.12.2010 Beiträge: 35
|
Verfasst am: 19.12.2010, 19:44 Titel: |
|
|
Danke. |
|
Nach oben |
|
 |
nemored

Anmeldungsdatum: 22.02.2007 Beiträge: 4704 Wohnort: ~/
|
Verfasst am: 19.12.2010, 19:49 Titel: |
|
|
zweiten Fehler gefunden - beim zweiten GETMOUSE fehlt ein zweites Komma vor dem mouseButtons. _________________ Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1. |
|
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.
|
|