![]() |
Fehler in Delphi Pointer-Datenbank!
Hi Community!
Wenn ich den folgenden Quellcode bei mir in Delphi ausführe, und in die btnHinzufuegenClick Prozedur anwähle, so funktioniert sie nicht richtig! Anstatt, dass diese den Nachnamen + Vornamen reinsetzt, setzt sie nur ein Komma (,) rein! Ich hab allerdings keine Ahnung wieso!?
Delphi-Quellcode:
[edit=Admin]Delphi-Tags gesetzt. Künftig bitte selber machen. ;-) Mfg, Daniel[/edit]
unit Unit1;
interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) lbxAusgabe: TListBox; btnErsteingabe: TButton; btnHinzufuegen: TButton; procedure btnErsteingabeClick(Sender: TObject); procedure btnHinzufuegenClick(Sender: TObject); end; Pointertyp = ^Schuelertyp; Schuelertyp = record Nachname, Vorname, Name : String; Nach : Pointertyp; end; var Form1: TForm1; Kopf, Vor, Zeiger : Pointertyp; Pos : Integer; implementation {$R *.DFM} procedure Eingabe(var Neu : Pointertyp); begin new(Neu); Kopf^.Nachname := InputBox('Nachname:','Eingabe:',''); Kopf^.Vorname := InputBox('Vorname:','Eingabe:',''); end; procedure TForm1.btnErsteingabeClick(Sender: TObject); var Leer : String; I : Integer; begin Eingabe(Kopf); Kopf^.Nach := nil; Leer := ','; For I := 1 to (13 - length(Kopf^.Nachname)) do Leer := Leer + ' '; lbxAusgabe.Items.Add(Kopf^.Nachname + Leer + Kopf^.Vorname); end; procedure TForm1.btnHinzufuegenClick(Sender: TObject); var Neu : Pointertyp; procedure Suchen(Zeiger : Pointertyp; var Vor : Pointertyp); begin while (Zeiger <> nil) and (Zeiger^.Nachname < Neu^.Nachname) do begin Vor := Zeiger; Zeiger := Vor^.Nach; end; end; procedure Einfuegen(Vor : Pointertyp); var Leer : String; I : Integer; begin if Kopf^.Nachname > Neu^.Nachname then begin Neu^.Nach := Kopf; Kopf := Neu; end else begin Neu^.Nach := Vor^.Nach; Vor^.Nach := Neu; end; Leer := ','; For I := 1 to (13 - length(Neu^.Nachname)) do Leer := Leer + ' '; lbxAusgabe.Items.Add(Neu^.Nachname + Leer + Neu^.Vorname); end; begin Eingabe(Neu); Suchen(Kopf, Vor); Einfuegen(Vor); end; end. |
Re: Fehler in Delphi Pointer-Datenbank!
bitte delphi tags setzen,
dann ist der code besser lesbar. |
Re: Fehler in Delphi Pointer-Datenbank!
Hallo Ashiaka! :dp:
Verwende doch bitte die Tags [ delphi ] und [ /delphi ] (ohne Leerzeichen) um deinen Code zu formatieren... DANKE! MfG Florian :hi: [edit] ihr seit doch alle blöd! ;) das wollte ich schreiben... :( [/edit] |
DP-Maintenance
Dieses Thema wurde von "Daniel" von "Datenbanken" nach "Sonstige Fragen zu Delphi" verschoben.
Ist kein Datenbank-Problem. Ab nach \'Sonstiges\' damit. |
Re: Fehler in Delphi Pointer-Datenbank!
Hi,
zwei Dinge:
Danke, Chris |
Re: Fehler in Delphi Pointer-Datenbank!
Danke dir Daniel und ich werds mir merken ^^!
MfG, Ashiaka |
Re: Fehler in Delphi Pointer-Datenbank!
in deinem code steht
Delphi-Quellcode:
in keiner schleife , ergo trägt er immer das komma ein.
leer:=',';
raik |
Re: Fehler in Delphi Pointer-Datenbank!
wo ist neu definiert?
Delphi-Quellcode:
Siehst du überhaupt noch durch?? Würde ja gerne helfe, aber das ist alles so wirr geschrieben das ich da nicht durchsehe
[...]
begin Eingabe(Neu); Suchen(Kopf, Vor); Einfuegen(Vor); end; [...] |
Re: Fehler in Delphi Pointer-Datenbank!
Delphi-Quellcode:
Dies wird ja in die Listbox eingetragen und nicht bloß Leer! Denke, ich zumindest!
lbxAusgabe.Items.Add(Neu^.Nachname + Leer + Neu^.Vorname);
Neu ist der Name des Datensatzes/ der Datenbank! MfG, Ashiaka |
Re: Fehler in Delphi Pointer-Datenbank!
Delphi-Quellcode:
Leer := ',';
For I := 1 to (13 - length(Neu^.Nachname)) do Leer := Leer + ' '; lbxAusgabe.Items.Add(Neu^.Nachname + Leer + Neu^.Vorname); end;
Delphi-Quellcode:
index fängt immer mit null an
Leer := ',';
For I := 0 to (13 - length(Neu^.Nachname)-1) do begin Leer := Leer + ' '; lbxAusgabe.Items.Add(Neu^.Nachname + Leer + Neu^.Vorname); end; end; mann da fehlt ja noch ein begin :shock: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:36 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