AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

checkboxen in array??

Ein Thema von Spanky_Ham · begonnen am 1. Okt 2009 · letzter Beitrag vom 1. Okt 2009
Antwort Antwort
Spanky_Ham

Registriert seit: 1. Okt 2009
9 Beiträge
 
#1

checkboxen in array??

  Alt 1. Okt 2009, 20:13
hallo,
mein problem ist, dass ich checkboxen in ein array speichern will, damit ich diese dann mit einer schleife durchlaufen kann um zu testen ob sie checked sind.

  checkboxen: array of TMeineCheck; TMeineCheck ist folgende Klasse:

Delphi-Quellcode:
type
 TMeineCheck = class(TCheckBox)
 private
    FBla : real;
 end;
...da ich will, dass jede Checkbox ein Attribut hat, wo ich gewisse werte reinspeichern kann.

Mit diesem code will ich nun die Checkbox ins Array speichern:
zutaten[0] := CheckBox1; Da bekomm ich nur logischerweise die fehlermeldung, dass TMeineCheck (array) und TCheckBox (die checkboxen halt) unterschiedliche typen sind.
wie kann ich den fehler beseitigen?
ich will, dass ich später auf checkboxen.FBla sowie auf alle anderen Methoden von einer normalen checkbox zugreifen kann.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: checkboxen in array??

  Alt 1. Okt 2009, 20:28
Guten Abend,

was spricht dagegen in das Array TMeinChekbox Instanzen hineinzupacken?
Du mußt dann nur die Instanzen manuel erstellen und auf deine Form
per Sourcecode verteilen.

Delphi-Quellcode:
setLength(checkboxen,5);
for i:=low(checkboxen) to high(checkboxen) do
  begin
    checkboxen[i].create(Form1);
    checkboxen[i].parent:=Form1;
    checkboxen[i].left :=20+i*40;
    checkboxen[i].top := 20;
  end;

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von geskill
geskill

Registriert seit: 17. Feb 2007
Ort: NRW
420 Beiträge
 
Delphi 2010 Professional
 
#3

Re: checkboxen in array??

  Alt 1. Okt 2009, 20:30
Hallo,
möchtest du CheckBoxen die du per Design-Time erstellt hast da rein speichern / CheckBoxen die du mit TCheckBox.Create erstellt hast?
- So was wird nicht gehen, da du dann auf einen Wert zugreifen willst der nicht existiert.


---
Andernfalls kannst du Typen umwandeln (typecast), einfach Typ(<Variable>) oder (<Variable> as Typ)
Sebastian
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#4

Re: checkboxen in array??

  Alt 1. Okt 2009, 20:33
Was soll das ? Du willst doch nicht den Rahmen abspeichern und den Haken oder eben keinen oder doch ? Informationsgehalt hat nur 1 oder 0 oder ein sonstiger eindeutiger Wert. Und das speichert man dann ab. 8) Ob damit die Checkbox bestückt wird, oder sonstwas ist eher zweitrangig.
Gruß
Hansa
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#5

Re: checkboxen in array??

  Alt 1. Okt 2009, 20:36
.. oder es könnte auch mit class helper funktionieren.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Spanky_Ham

Registriert seit: 1. Okt 2009
9 Beiträge
 
#6

Re: checkboxen in array??

  Alt 1. Okt 2009, 21:03
Zitat von geskill:
Hallo,
möchtest du CheckBoxen die du per Design-Time erstellt hast da rein speichern / CheckBoxen die du mit TCheckBox.Create erstellt hast?
- So was wird nicht gehen, da du dann auf einen Wert zugreifen willst der nicht existiert.


---
Andernfalls kannst du Typen umwandeln (typecast), einfach Typ(<Variable>) oder (<Variable> as Typ)
super! danke, mit Typ(variable), also in meinem fall TMeineCheck(CheckBox1) hat es geklappt.

an alle anderen die gefragt haben: ich habe auf meiner form mehrere checkboxen, für die ich jeweils einen wert speichern muss...diesen wollte ich also der klasse hinzufügen. dafür habe ich die klasse TMeineCheck erstellt, der die Klasse TCheckBox vererbt wurde. da ich mit allen checkboxen arbeiten muss und nicht 10 anweisungen untereinander tippen wollte, habe ich ein array of TMeineCheck erstellt, das dann mit einer for schleife durchlaufen werden sollte. Das problem war, dass er Objekte vom typ TCheckBox nicht in ein array of Tmeinecheck speichern konnte.
mit checkboxen[i] := TMeineCheck(CheckBox1) (das array heißt checkboxen) hat es dann geklappt, weil grob gesagt CheckBox1 zum Typ TMeineCheck gemacht wurde.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.771 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: checkboxen in array??

  Alt 1. Okt 2009, 21:18
Zitat von Spanky_Ham:
.. some stuff deleted
mit checkboxen[i] := TMeineCheck(CheckBox1) (das array heißt checkboxen) hat es dann geklappt, weil grob gesagt CheckBox1 zum Typ TMeineCheck gemacht wurde.
.. aber Zugriff auf Dein Attribut (FB1a) hast Du so nicht.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:34 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz