AGB  ·  Datenschutz  ·  Impressum  







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

zusatzinformationen in tlistbox

Ein Thema von eric - the master · begonnen am 26. Apr 2009 · letzter Beitrag vom 30. Apr 2009
 
Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.859 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: zusatzinformationen in tlistbox

  Alt 28. Apr 2009, 01:04
Hallo eric – the master,

man kann das auch mit einem Object lösen.

Zuerst das Object:

Delphi-Quellcode:
unit uListBoxObjectClass;

interface

uses
  Classes;

type
  Ttest= Class(TObject)
  private
    FWert1: String;
    FWert2: String;
    FWert3: String;
    procedure GetFWerte1(const Value: String);
    procedure GetFWerte2(const Value: String);
    procedure GetFWerte3(const Value: String);
    function SetFWert1: String;
    function SetFWert2: String;
    function SetFWert3: String;
  public
    constructor Create();
    destructor Destroy; override;
    property Wert1: String Read SetFWert1 write GetFWerte1;
    property Wert2: String Read SetFWert2 write GetFWerte2;
    property Wert3: String Read SetFWert3 write GetFWerte3;
  End;

implementation

{ Ttest }

constructor Ttest.Create;
begin
  inherited Create;
end;

destructor Ttest.Destroy;
begin
  inherited;
end;

procedure Ttest.GetFWerte1(const Value: String);
begin
  if Value<>FWert1 then
  begin
    FWert1:= Value;
  end;
end;

procedure Ttest.GetFWerte2(const Value: String);
begin
  if Value<>FWert2 then
  begin
    FWert2:= Value;
  end;
end;

procedure Ttest.GetFWerte3(const Value: String);
begin
  if Value<>FWert3 then
  begin
    FWert3:= Value;
  end;
end;

function Ttest.SetFWert1: String;
begin
  Result:= FWert1;
end;

function Ttest.SetFWert2: String;
begin
  Result:= FWert2;
end;

function Ttest.SetFWert3: String;
begin
  Result:= FWert3;
end;

end.
Und jetzt das Hauptprogramm:

Delphi-Quellcode:
unit frmListBox;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, uListBoxObjectClass;

type
  TForm3 = class(TForm)
    ListBox1: TListBox;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Edit4: TEdit;
    procedure ListBox1Click(Sender: TObject);
    procedure FormDestroy(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    Test: TTest;
  end;

var
  Form3: TForm3;

implementation

{$R *.dfm}

procedure TForm3.Button1Click(Sender: TObject);
var
  strText: String;
begin
  Test:= TTest.Create; // Object erstellen
  Test.Wert1:= Edit1.Text; // Text im Object ablegen
  Test.Wert2:= Edit2.Text;
  Test.Wert3:= Edit3.Text;
  strText:= Edit4.Text;
  ListBox1.AddItem(strText, Test); // In die Listbox
end;

procedure TForm3.FormDestroy(Sender: TObject);
var
  I: Integer;
begin
   for i:= ListBox1.Count - 1 downto 0 do
   begin
     Test:= TTest(ListBox1.Items.Objects[i]);
     if Test<>NIL then
     begin
       freeAndNil(Test);
     end;
   end
end;

procedure TForm3.ListBox1Click(Sender: TObject);
var
  I: Integer;
begin
  for I := 0 to ListBox1.Count - 1 do
  begin
    if ListBox1.Selected[i] then
    begin
      Edit1.Clear;
      Edit2.Clear;
      Edit3.Clear;
      Edit1.Text:= TTest(ListBox1.Items.Objects[i]).Wert1;
      Edit2.Text:= TTest(ListBox1.Items.Objects[i]).Wert2;
      Edit3.Text:= TTest(ListBox1.Items.Objects[i]).Wert3;
    end;
  end;
end;

end.
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat
 


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 16:20 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