![]() |
CheckBox
Hallo und guten Morgen,
ich bin Anfänger und habe ein kleines Problem: Ich möchte in einem Rahmen 4 CheckBoxen kreuzförmig platzieren. Von den beiden jeweils gegenüberliegenden darf nur 1 ausgewählt werden können. D.h. max. können 2 ausgewählt sein. Entweder 1 senkrecht, oder 1 waagrecht. Erlaubte Möglichkeiten sollen sein: - keine ausgewählt - 1 ausgewählt ( senkrecht oder waagrecht) - 2 ausgewählt ( 1 senkrecht und 1 waagrecht) Im Programm soll zu einem Grundwert 1 Wert addiert werden, in Abhängigkeit der ausgewählten Checkboxen. Beispiel: Grundwert = 1000 Links = 1000 + 500 wenn waagrecht.links Vorne = 1000 + 300 wenn senkrecht.oben Hinten = 1000 + 200 wenn senkrecht.unten Rechts = 1000 + 100 wenn waagrecht.rechts Ist keine CheckBox ausgewählt sind alle 4 Werte 1000 Wer kann mir hier zu einem Einstieg verhelfen. mfG blacky |
Re: CheckBox
Ich glaub ich hab noch nicht ganz verstanden wann welche Checkboxen aktiv sein sollen:
Du hast 4 Checkboxen so angeordnet:
Code:
und jetzt?
A B
C D Wenn zB nur A oder B aktiv sein sollen kannst du in das OnClick von A das hier schreiben:
Delphi-Quellcode:
Und bei B natürlich das entsprechende.
Oben := GrundWert;
if A.Checked then begin B.Checked := false; Inc(Oben, 300); end; |
Re: CheckBox
So kannst du mal checken welche markiert sind:
Delphi-Quellcode:
if CheckBox2.Checked=true then
begin ShowMessage('Beide können nicht aktive sein'); end else begin //Berechnungen durchführen end; |
Re: CheckBox
danke,
werds probieren. mfg blacky |
Re: CheckBox
Zitat:
sollte aber so heißen:
Delphi-Quellcode:
Da sonst eine doppelte Prüfung durchgeführt werden muss (hab ich mal hier irgendwo gelesen)
if CheckBox2.Checked then
begin ShowMessage('Beide können nicht aktive sein'); end else begin //Berechnungen durchführen end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:58 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz