Ich habe eine Liste auf der man einzelne Segmente auswählen kann. Diese Segmente sind Arrays. Wenn ich aber nun ein Segment auswähle, kann ich immer noch die andren hinzufügen, ich hätte es aber gerne so das immer nur eine Auswahl möglich ist. Gibt es einen "alles Ausser" operator für solche zwecke?
initSprite()
initKeyboard()
OpenScreen(1024, 768, 16, "Liste")
Structure Liste
x.w
y.w
Auswahl.w
endStructure
dim ListenAbschnitt.Liste(30)
for x = 0 to 30
Liste(x)\x = 10
Liste(x)\y = x*20
next
repeat
examineMouse()
examineKeyboard()
for x = 0 to 30
If mouseX() > Liste(x) and mouseX() < Liste(x) + Listenabschnittbreite and MouseY() > Liste(x)\y and MouseY() < Liste(x)\y + listenabschnitthöhe
If mousebutton(1) = #True and ;Jetzt die Zeile die ich Brauche, übersetzt: Wenn noch keine Auswahl getroffen wurde...
Liste(x)\Auswahl = 1
elseif ... Wenn eine Andre auswahl getroffen wurd und die eine schon existiert, so entferne die eine und erstelle die neue
endif
endif
next
Until Keyboardpushed(1)
EDIT: Warum hat der das hier so verwurschtelt? Nicht drauf achten bitte.
InitSprite()
InitKeyboard()
OpenScreen(1024, 768, 16, "Liste")
Structure Liste
x.w
y.w
Auswahl.w
EndStructure
Dim ListenAbschnitt.Liste(30)
For x = 0 To 30
Liste(x)\x = 10
Liste(x)\y = x*20
Next
Auswahl.l = -1
Repeat
ExamineMouse()
ExamineKeyboard()
For x = 0 To 30
If MouseX() > Liste(x)\x And MouseX() < Liste(x)\x + Listenabschnittbreite And MouseY() > Liste(x)\y And MouseY() < Liste(x)\y + listenabschnitthöhe
If MouseButton(1) = #True
If Auswahl = -1
Liste(x)\Auswahl = 1
Auswahl = x
Else
Liste(Auswahl)\Auswahl = 0
Auswahl = -1
EndIf
EndIf
EndIf
Next
Until KeyboardPushed(1)
Zuletzt geändert von HeX0R am 29.03.2007 20:48, insgesamt 1-mal geändert.
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
ich weiß das das nicht böse gemeint war, aber <> hat auch nicht funktioniert, ich hab eine zweite for dingens da eingefügt und hab sozusagen beide gegeneinander ausgespielt, jetzt hats funktioniert, ich kann nur noch teile wählen wenn keine anderen gewählt sind, trotzdem thx an alle die mir helfen wollten!