AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Listbox vom HTML-Formular in Delphi nachbauen
Thema durchsuchen
Ansicht
Themen-Optionen

Listbox vom HTML-Formular in Delphi nachbauen

Ein Thema von RWarnecke · begonnen am 13. Okt 2009 · letzter Beitrag vom 13. Okt 2009
Antwort Antwort
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#1

Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 10:42
Hallo zusammen,

wenn ich folgenden Code in einem HTML-Formular habe :
Code:
<select name="test" multiple="multiple" size="4">
  <option value="100">Eintrag 1</options>
  <option value="101">Eintrag 2</options>
  <option value="102">Eintrag 3</options>
  <option value="103">Eintrag 4</options>
</select>
Wie kann ich jetzt diese Listbox in einem Delphi-Programm nachbauen ? Bei der einfachen Listbox habe ich keine Möglichkeit gefunden. Wenn es irgendwie geht, würde ich gerne den Einsatz von Fremdkomponenten vermeiden.
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Andreas L.
(Gast)

n/a Beiträge
 
#2

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 10:57
Wo ist da ein Unterschied zur TListBox? Geht es dir ums Multi-Select? Da hat die ListBox die Eigenschaft MultiSelect.

EDIT: Oder meinst du das zu jedem Eintrag noch ein Wert existiert? Geht z. B. so:
Delphi-Quellcode:
var
  Index: Integer;
begin
  Index := ListBox1.Items.Add('Eintrag 1');
  ListBox1.Items.Objects[Index] := TObject(100);
end;
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#3

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 11:17
Zitat von Andreas L.:
EDIT: Oder meinst du das zu jedem Eintrag noch ein Wert existiert? Geht z. B. so:
Delphi-Quellcode:
var
  Index: Integer;
begin
  Index := ListBox1.Items.Add('Eintrag 1');
  ListBox1.Items.Objects[Index] := TObject(100);
end;
Das ist genau nachdem ich gesucht habe. Das ich jedem Eintrag in der Listbox noch einen Wert zuweisen kann. Kann ich dann später auch wieder auf diesen Wert zugreifen, bei Auswahl des entsprechenden Eintrags ? Wenn ja wie ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
schlecki

Registriert seit: 11. Apr 2005
Ort: Darmstadt
148 Beiträge
 
Delphi XE2 Enterprise
 
#4

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 11:20
Zitat von RWarnecke:
Zitat von Andreas L.:
EDIT: Oder meinst du das zu jedem Eintrag noch ein Wert existiert? Geht z. B. so:
Delphi-Quellcode:
var
  Index: Integer;
begin
  Index := ListBox1.Items.Add('Eintrag 1');
  ListBox1.Items.Objects[Index] := TObject(100);
end;
Das ist genau nachdem ich gesucht habe. Das ich jedem Eintrag in der Listbox noch einen Wert zuweisen kann. Kann ich dann später auch wieder auf diesen Wert zugreifen, bei Auswahl des entsprechenden Eintrags ? Wenn ja wie ?
In diesem Beispiel dann mit

Delphi-Quellcode:
var
  wert: Integer;

wert := Integer(ListBox1.Items.Objects[Index]);
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#5

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 11:34
Danke erstmal euch beiden für die schnellen Antworten. Nur eines verstehe ich noch nicht ganz, was läuft da im Hintergrund ab ? Was macht der Befehl Integer im Grunde mit meinem Object ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
schlecki

Registriert seit: 11. Apr 2005
Ort: Darmstadt
148 Beiträge
 
Delphi XE2 Enterprise
 
#6

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 14:37
Zitat von RWarnecke:
Danke erstmal euch beiden für die schnellen Antworten. Nur eines verstehe ich noch nicht ganz, was läuft da im Hintergrund ab ? Was macht der Befehl Integer im Grunde mit meinem Object ?
Das ist ein Cast
Der macht erstmal gar nix. Du sagst an der Stelle nur, "Ich weiß, da ist ein Integer und nichts anderes"; und wenn doch mal was anderes da ist, dann kracht es bestenfalls

Wenn du schreibst:

  Listbox1.Items.Objects[Index] := TObject(5); Hier wird kein Objekt erzeugt. Du schreibst da einfach eine 5 hin und sagst dem Compiler, da sei ein TObject. Umgekehrt ist es genauso.
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#7

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 14:48
Danke für Deine Erklärung, wenn ich das soweit richtig verstanden habe, könnte ich auch hergehen und das gleiche mit einem String oder einem anderen Typ machen oder ?
Rolf Warnecke
App4Mission
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.735 Beiträge
 
Delphi 2007 Professional
 
#8

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 14:55
Zitat von RWarnecke:
Danke für Deine Erklärung, wenn ich das soweit richtig verstanden habe, könnte ich auch hergehen und das gleiche mit einem String oder einem anderen Typ machen oder ?
Nö. Nur mit Typen, die ohne Verrenkungen in 32 Bit passen, also Zeiger, Integer <= 32bit, Enum-Typen, (Ansi)Char...

String würde ich nicht probieren: Ein String ist zwar eigentlich auch nur ein Zeiger, aber halt mit Compiler magic drumrum, so dass das Ganze ziemlich frickelig wird.
Uli Gerhardt
  Mit Zitat antworten Zitat
Benutzerbild von RWarnecke
RWarnecke

Registriert seit: 31. Dez 2004
Ort: Stuttgart
4.408 Beiträge
 
Delphi XE8 Enterprise
 
#9

Re: Listbox vom HTML-Formular in Delphi nachbauen

  Alt 13. Okt 2009, 15:16
Ok, jetzt habe ich es verstanden. Das hat mir sehr weitergeholfen. Danke.
Rolf Warnecke
App4Mission
  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 17:55 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