Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   combobox bringt exception (https://www.delphipraxis.net/133643-combobox-bringt-exception.html)

khh 6. Mai 2009 08:46


combobox bringt exception
 
hallo zusammen,
ich habe bei einer combobox autocomplete auf true gestellt.
mit:
Delphi-Quellcode:
procedure Tdruckuebersichtform.kdComboBox3Change(Sender: TObject);
begin
    {kunden_id übernehmen }
     //-- harter typcast
     Obj3 := TKunde(self.kdCombobox3.Items.Objects[self.kdCombobox3.ItemIndex]);
         if Assigned(Obj3) then
         fauftragkd_id:= obj3.KUNDEN_ID
     else
     begin
     // Fall "Alle"
      fauftragkd_id:= 0;
     end;
lese ich die kd_id aus.

dies funktioniert solange ich den Kunden per mausklick aus dem Feld auswähle.
da habe ich, wenn ich mir obj3 anzeigen lasse einen Zeiger auf Tlisteninhalt an adresse xy

Wenn ich per autocomplete wähle, also einen buchstaben eintippe, bekomme ich eine exception mit
einem obj3 welches auf einen leeren Speicherbereich also ???0xFFF zeigt. :-(

was läuft da falsch bzw.kann ichanders machen?

danke Gruss KH

Bernhard Geyer 6. Mai 2009 08:53

Re: combobox bringt exception
 
Check den ItemIndex der ComboBox:

Delphi-Quellcode:
begin
  fauftragkd_id := 0;
  // Combobox-Item ausgewählt
  if kdCombobox3.ItemIndex > -1 then
  begin
     Obj3 := kdCombobox3.Items.Objects[kdCombobox3.ItemIndex] as TKunde;
     if Assigned(Obj3) then
        fauftragkd_id:= obj3.KUNDEN_ID
  end;
end;

khh 6. Mai 2009 08:59

Re: combobox bringt exception
 
Zitat:

Zitat von Bernhard Geyer
Check den ItemIndex der ComboBox:

danke dir, funktioniert :-)

EDIT: den softcast mag Lazarus zwar nicht, aber es funktioniert ja auch mit dem harten typcast

Gruss Kh


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:11 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