Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Combobox programmierung


sharky1000us - Mi 13.11.02 19:38
Titel: Combobox programmierung
Also, ich programmiere grade so ein Textprogramm:

der Quell code ist

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
procedure TForm1.Button1Click(Sender: TObject);
var
vokalmenge: set of char;
eingabe: char;
zaehler: integer;
str1,str2,str3,str4: string;
begin
str1:= memo1.Lines[0];
str2:= memo1.Lines[1];
str3:= memo1.Lines[2];
str4:= memo1.Lines[3];
eingabe:= edit1.text[1];
vokalmenge:=['a','e','i','o','u'];

if eingabe in vokalmenge
then begin
for zaehler:= 1 to length(str1) do
begin
if str1[zaehler] in vokalmenge
then str1[zaehler] := eingabe;
end;
end;
listbox1.Items.add(str1);

if eingabe in vokalmenge
then begin
for zaehler:= 1 to length(str2) do
begin
if str2[zaehler] in vokalmenge
then str2[zaehler] := eingabe;
end;
end;
listbox1.Items.add(str2);

if eingabe in vokalmenge
then begin
for zaehler:= 1 to length(str3) do
begin
if str3[zaehler] in vokalmenge
then str3[zaehler] := eingabe;
end;
end;
listbox1.Items.add(str3);

if eingabe in vokalmenge
then begin
for zaehler:= 1 to length(str4) do
begin
if str4[zaehler] in vokalmenge
then str4[zaehler] := eingabe;
end;
end;
listbox1.Items.add(str1);

jetzt will ich aber statt dem edit1.text ne combobox reinbauen. was muss ich schreiben ? combobox1.items??? ich denke mal das ich das schreiben mus, bzw. es geht ja auch, nur wenn ich alles compiliere dann sagt das programm," string und char" nicht kompatibel oder so was.

nun, helft mir mal bitte!

(13.11.02 23:42 Tino) Code-Tags hinzugefügt.


Wolff68 - Mi 13.11.02 19:44

Wie greifst Du denn auf den Eintrag in der Combobox zu?
Generell hat ja eine Combobox genau die gleiche Eigenschaft TEXT wie das Edit auch. Sollte also keinen Unterschied machen. (Natürlich auch nicht in der Verwendung Combobox1.Text[1])


sharky1000us - Mi 13.11.02 21:19

ja, und die [1] hinter combobox steht dann für die zeile, oder?
wie schreibe ich eine anweisung für alle zeilen der combobox, die nur immer das erste zeichen lesen, also wie für ein editfeld (edit1.text[1])
Dann sollte ich noch wissen, wie es mir nur das erste zeichen des ersten Feldes in der Liste der Combobox liest!!!!


Tino - Do 14.11.02 00:44

sharky1000us hat folgendes geschrieben:
Dann sollte ich noch wissen, wie es mir nur das erste zeichen des ersten Feldes in der Liste der Combobox liest!!!!

Die Combobox hat die Eigenschaft Items. Über diese Eigenschaft hast Du Zugriff auf die "Felder" (Items) der Combobox. So bekommst Du den kompletten Eintrag des ersten Items aus der Combobox:

Quelltext
1:
Str := Combobox1.Items [0];                    

Wie Du nun aus diesem String das erste Zeichen bekommst solltest Du ja wissen :-D

Gruß
TINO