| Autor |
Beitrag |
Templar
      
Beiträge: 18
|
Verfasst: Do 14.11.02 09:57
Guten Morgen.
Ich habe mal wieder ein Problemchen mit meinem Prog.
Bisher sollte in meine Db nur geschrieben werden. Also Daten löschen war nicht erforderlich. Damit Daten nicht 2-mal vorkamen habe ich vor dem einlesen einen spezifieschen Teil der neuen Daten in eine Listbox geschrieben und diese in einer .TXT gespeichert.
Nun wenn aber jetzt Daten aus der DB gelöscht werden, stehen die ja immernoch in der Listbox und werden daher nicht wieder neu übernommen, falls die Datensätze schonmal drinnen waren. Habe versucht mir den Navigator einzusparen und ihn slebst programmiert um an den "Löschen-Button" noch was dranzuhängen damit dieser wenn der Datensatz XYZ mit der Indexnummer 0122332 gelöscht wird auch diese Nummer aus der Listbox löscht. Leider haut das nicht hin.
Also hab ich dne Navigator wieder reingepackt.
Ich hoffe mein Problem ist verständlich dargestellt und ich hoffe ihr könnt mir helfen.
MFG
_________________ a metal heart is hard to tear apart
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Do 14.11.02 10:24
Hi
Am einfachsten könntest du das im BeforeDelete bzw. AfterDelete Ereignis der Tabelle machen. Bei BeforeDelete legst du den Schlüssel in einer Variablen ab, bei AfterDelete löscht du noch die Information aus deiner Liste.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Do 14.11.02 10:34
Ich hab grad nochmal ein bischen mit dem Prog. experimentiert.
Dabei ist es abgestürzt, als ich keine Daten in der Listbox hatte aber in dem Grid. Wollte ich den selben Datensatz hinzufügen *plof* Ende.
Wäre es nicht möglich das irgendwie so hinzubiegen, das es eine Meldung gibt und das Prog. nicht absürzt. So könnte ich mir doch die Listbox mit den Elemtent zum vergleichen sparen, oder?
_________________ a metal heart is hard to tear apart
|
|
MrSpock
      
Beiträge: 262
|
Verfasst: Do 14.11.02 13:36
Hallo Templar,
üblicherweise überprüft man das Vorhandensein von Daten über Funktionen, die die Datenbank liefert. Da wäre zum Beispiel FindKey, wenn es sich um ein oder mehrere Indexfelder handelt oder eine SQL Abfrage, die prinzipiell beliebige Felder einschließen kann. Der Umweg über eine Texdatei scheint daher recht kompliziert.
Wenn es aber nicht anders geht, ist die Frage, warum der Absturz stattfindet. Ich vermute, dass du versuchtst auf Elemente der Listbox zuzugreifen, die gar nicht existieren. Daher wäre eine vorherige Abfrage mit Items.Count über die Anzahl der Zeilen in der LB sinnvoll. Grundsätzlich solltest du Zugriffe, die kritisch sein können, nur in try ... except Blocks packen, damit ein Fehlgriff nicht zu einem Verlassen des Programms, sondern zu einer geregelten Reaktion führen.
_________________ Live long and prosper
MrSpock \\//
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Do 14.11.02 13:54
Ich glaub ich habe mich etwas falsch ausgedrückt.
Ob jetzt was in der Listbox steht ist eigentlich in diesem Fall wurscht.
Sicher ist der Weg über die Listbox kompliziert. Also versuche ich es nochmal der Reihe nach zu erklären.
Listbox1 : Anzeige der geladenen Daten
Einlesen.Button : Liest die Daten der Listbox1 in DB edits, sofern die Nummer z.B. 123 nicht schon in Listbox2 vorhanden ist.
->Vorhanden: Meldung ->löschen der Daten ->nächste Daten
-> nicht Vorhanden ->Butten.Packen packt die Daten aus den DB Edits in den Grid.
Funktion Listbox2: Sammeln der Nummern und sichern in .TXT Datei
Problem. Bei löschen von Daten aus dem Grid bleiben die Daten in der TXT (logisch).
Frage: Gibt es eine Funktion oder Routine um das löschen eines Datensatzes, welcher zb. Nummer mit dem Eintrag 123 als Index ermöglicht.
Gleichzeitig dann aber auch den Satz aus der Listbox2 entfernt, wo die Nummer ebenfalls drinsteht.
Oder eben eine ganz andere Möglichkeit.
Listbox2 weglassen.
Problem.
Beim Versuch ohne die Listbox Einen Datensatz mit der Selben nummer in das Grid zu packen ist das Prog. ausgestiegen.
Frage: Gibt es eine Möglichkeit das zu verhindern? Wenn ja, wie?
Ich hoffe das dies etwas besser zu verstehen ist
MFG
_________________ a metal heart is hard to tear apart
|
|
MrSpock
      
Beiträge: 262
|
Verfasst: Do 14.11.02 21:36
Titel: !
| Templar hat folgendes geschrieben: | | Listbox1 : Anzeige der geladenen Daten |
Was genau meinst du mit geladenen Daten? Du arbeitest, wenn ich den Titel richtig verstehe, arbeitest du mit Paradox. Wie lädtst du dann Daten? Über eine SQL Abfrage?
| Zitat: |
Einlesen.Button : Liest die Daten der Listbox1 in DB edits, sofern die Nummer z.B. 123 nicht schon in Listbox2 vorhanden ist.
|
Bevor du Daten in DBEdits liest, musst du die zugrundeliegende DB in den Edit oder Insert Zustand bringen.
| Zitat: |
->Vorhanden: Meldung ->löschen der Daten ->nächste Daten. |
Welche Daten sind wo vorhanden?
| Zitat: |
-> nicht Vorhanden ->Butten.Packen packt die Daten aus den DB Edits in den Grid. |
Was denn jetzt für ein Grid? Ein DBGrid? Das wäre ja dann mit einer DB verbunden!? Ist das diesselbe Tabelle, auf die auch die DBEdits verweisen?
| Zitat: |
Funktion Listbox2: Sammeln der Nummern und sichern in .TXT Datei
Problem. |
Sammeln welcher Nummern?
| Zitat: |
Bei löschen von Daten aus dem Grid bleiben die Daten in der TXT (logisch). |
Wie löscht du Daten aus dem Grid? Meinst du Löschen eines Datensatzes aus der Tabelle, die in dem Grid angezeigt wird?
| Zitat: |
Frage: Gibt es eine Funktion oder Routine um das löschen eines Datensatzes, welcher zb. Nummer mit dem Eintrag 123 als Index ermöglicht. |
Verstehe ich dich richtig: Du möchtest den Satz aus einer Tabelle löschen, dessen Indexfeld den Wert 123 hat? Falls ja:
Quelltext 1: 2: 3: 4:
| if theTable.FindKey([123]) then theTable.Delete else ShowMessage('Der Datensatz existiert nicht.'); |
| Zitat: |
Gleichzeitig dann aber auch den Satz aus der Listbox2 entfernt, wo die Nummer ebenfalls drinsteht. |
Wie bereits von LCS beschrieben, kannst du das BeforeDelete Ereignis benutzen, um den Eintrag aus der LB2 zu löschen.
| Zitat: |
Oder eben eine ganz andere Möglichkeit.
Listbox2 weglassen.
Problem.
Beim Versuch ohne die Listbox Einen Datensatz mit der Selben nummer in das Grid zu packen ist das Prog. ausgestiegen. |
Ich bin überzeugt, dass es ohne LB2 besser geht, aber ich habe das ganze Programm leider noch nicht verstanden
[/code][/quote]
_________________ Live long and prosper
MrSpock \\//
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Fr 15.11.02 11:13
Hi
| Templar hat folgendes geschrieben: |
Problem.
Beim Versuch ohne die Listbox Einen Datensatz mit der Selben nummer in das Grid zu packen ist das Prog. ausgestiegen.
Frage: Gibt es eine Möglichkeit das zu verhindern? Wenn ja, wie?
|
Wenn dabei dein Programm aussteigt, hast du in der Tat ein Problem
Im Normalfall wird bei einem doppel Wert im Primary Key eine Exception ausgelöst. Wenn du das im OnPostError Ereignis der Tabelle abfängst, kann auch niemand einen doppelten Wert eintragen und du sparst dir eine Menge Arbeit.
Alternativ dazu könntest du bei OnBeforePost mittels SQL abfragen, ob ein Datensatz mit dem eingegebenen Schlüssel schon existiert und an dieser Stelle schon den Anwender darauf hinweisen.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 10:17
Hi
| Zitat: |
Im Normalfall wird bei einem doppel Wert im Primary Key eine Exception ausgelöst. Wenn du das im OnPostError Ereignis der Tabelle abfängst, kann auch niemand einen doppelten Wert eintragen und du sparst dir eine Menge Arbeit.
|
Fehlermeldung:
Im Projekt blubblub.exe ist eine Exception der klasse DBengineError aufgetreten. Meldung: "Indexfehler". Prozeß wurde angehalten, mit.... fortsetzen.
Wie Schaffe ich es also dies zu verhindern?
MFG
Templar
_________________ a metal heart is hard to tear apart
|
|
wwerner
      
Beiträge: 185
|
Verfasst: Di 19.11.02 10:49
mit
try
....
except
....
end;
_________________ Gruß
Wolfgang
----------
zu hause ist es doch am schönsten
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 12:13
 Mensch bin schon voll verwirrt.
Das mit dem
try
....
except
....
end;
muss jetzt aber nich in das OnPostError oder?
Des muss doch beim schreiben bzw. davor geschehen?
Und wie soll ich über prüfen ob die Sch***** schon da drinne steht?
Also wenn ich das richtig verstehe soll ich versuchen den neuen Inhalt mit try zu schreiben, quasi
Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| try Table1.append neue daten table1.post except daten schon vorhanden Showmessage('Blup') end;
oder? |
_________________ a metal heart is hard to tear apart
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Di 19.11.02 13:18
Hi
Beim OnPostError brauchst du die Exception nicht abzufangen. Diese Routine wird ja als Reaktion auf den Fehler durchlaufen. Die Darstellung der Fehlermeldung kannst du innerhalb dieser Routine unterdrücken, wenn du die Variable Action auf daAbort setzt.
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 15:19
Hi.
Welche Variable action denn?
Ich versteh nix mehr
_________________ a metal heart is hard to tear apart
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Di 19.11.02 15:27
Die Variable Action die im Prozedurkopf einer OnPostError-Routine steht
Quelltext 1: 2: 3: 4: 5:
| procedure TForm1.Table1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction); begin Action := daAbort; end; |
Gruss Lothar
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 15:42
Hi
Ich habe das getan was du gesagt hast, und ich bekomme dennoch die Fehlermeldung.
Ich glaub ich schick mal den ganzen Progicode mit. Hoffentlich kann euch(mir) das helfen.
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: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134: 135: 136: 137: 138: 139: 140: 141: 142: 143: 144: 145: 146: 147: 148: 149: 150: 151: 152: 153: 154: 155: 156: 157: 158: 159: 160: 161: 162: 163: 164: 165: 166: 167: 168: 169: 170: 171: 172: 173: 174: 175: 176: 177: 178: 179: 180: 181: 182: 183: 184: 185: 186: 187: 188: 189: 190: 191: 192: 193: 194: 195: 196: 197: 198: 199: 200: 201: 202: 203: 204: 205: 206: 207: 208: 209: 210: 211: 212: 213: 214: 215: 216: 217: 218: 219: 220: 221: 222: 223: 224: 225: 226: 227: 228: 229: 230: 231: 232: 233: 234: 235: 236: 237: 238: 239: 240: 241: 242: 243: 244: 245: 246: 247: 248: 249: 250: 251: 252: 253: 254: 255: 256: 257: 258: 259: 260: 261: 262: 263: 264: 265: 266: 267: 268: 269: 270: 271: 272: 273: 274: 275: 276: 277: 278: 279: 280: 281: 282: 283: 284: 285: 286: 287: 288: 289: 290: 291: 292: 293: 294: 295: 296: 297: 298: 299: 300: 301: 302: 303: 304: 305: 306: 307: 308: 309: 310: 311: 312: 313: 314: 315: 316: 317: 318: 319: 320: 321: 322: 323: 324: 325: 326: 327: 328: 329: 330: 331: 332: 333: 334: 335: 336: 337: 338: 339: 340: 341: 342: 343: 344: 345: 346: 347: 348: 349: 350: 351: 352: 353: 354: 355: 356: 357: 358: 359: 360: 361: 362: 363: 364: 365: 366: 367: 368: 369: 370: 371: 372: 373: 374: 375: 376: 377: 378: 379: 380: 381: 382: 383: 384: 385: 386:
| unit Anmeldung_u;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Mask, DBCtrls, Buttons, Grids, DBGrids, ExtCtrls, Db, DBTables;
type TAnmeldung = class(TForm) Anmeldungen_L: TLabel; Panel1: TPanel; DBGrid1: TDBGrid; Panel2: TPanel; BitBtn1: TBitBtn; Vorname_L: TLabel; Name_L: TLabel; Nr_L: TLabel; Stdg_L: TLabel; Email_L: TLabel; Tel_L: TLabel; Nr_E: TDBEdit; Stdg_E: TDBEdit; Email_E: TDBEdit; Tel_E: TDBEdit; angemeldet_E: TDBEdit; Gruppe_E: TDBEdit; angemeldet_L: TLabel; Gruppe_L: TLabel; OpenDialog1: TOpenDialog; Table1: TTable; DataSource1: TDataSource; Einlesen: TButton; loeschen: TButton; ListBox1: TListBox; absolviert_L: TLabel; absolviert_E: TDBEdit; Matr_E: TEdit; Matr_L: TLabel; Vergleichen: TButton; Label1: TLabel; Label2: TLabel; Button1: TButton; Vorname_E: TDBEdit; Name_E: TDBEdit; DBCheckBox3: TDBCheckBox; DBCheckBox2: TDBCheckBox; Label3: TLabel; DBNavigator1: TDBNavigator; Memo1: TMemo; procedure LadenClick(Sender: TObject); procedure EinlesenClick(Sender: TObject); procedure loeschenClick(Sender: TObject); procedure FormCreate(Sender: TObject); procedure VergleichenClick(Sender: TObject); procedure DBCheckBox2Click(Sender: TObject); procedure Table1AfterScroll(DataSet: TDataSet); procedure Table1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction);
private
public { Public-Deklarationen } end;
var Anmeldung: TAnmeldung;
implementation //------------------------------------------------------------------------------ //Durchsucht die 2.Listbox ob der Eintrag schon vorhanden ist function vorhanden (Listbox2 : TListBox; eintrag : String):Boolean; var I: integer; begin Result := True; for i:=0 to Listbox2.Items.Count-1 do if Listbox2.Items[i] = eintrag then begin Listbox2.index := i; Exit; end; Result := False; end; {$R *.DFM}
//------------------------------------------------------------------------------ //Verantwortlich für das Laden der Dateien procedure TAnmeldung.LadenClick(Sender: TObject); var Zeile: string; Fehler: integer; Datei: textfile;
begin dbcheckbox2.checked := false; dbcheckbox3.checked := false; if (Opendialog1.Execute) then begin assignfile (Datei,Opendialog1.Filename); {$I-} reset (Datei); {$I+} Fehler := IOResult; if (Fehler>0) then begin Showmessage ('Datei-öffnen-Fehler'); exit; end; repeat {$I-} readln (Datei,Zeile); {$I+} Fehler := IOResult; if (Fehler>0) then begin Showmessage ('Datei-lesen-Fehler'); closefile (Datei); exit; end; Listbox1.Items.Add (Zeile); until (EOF(Datei)); closefile (Datei); end; Label3.caption := 'Die Listbox hat '+ inttostr(Listbox1.Items.count) +' Zeilen';
if (Listbox1.Items.count > 0) then begin loeschen.enabled := true; Vergleichen.enabled := true; end; end;
//------------------------------------------------------------------------------ //Verantwortlich für die Übernahme aus der Listbox in das DBGrid procedure TAnmeldung.EinlesenClick(Sender: TObject); var Zeile: string; Vorname, Name, Nr, Stdg, Email, Tel, angemeldet, Gruppe : string; posi: integer;
begin Zeile := Listbox1.Items[1]; posi := 2;
if (Zeile[posi]<>'"') then begin repeat Nr := Nr + Zeile[posi]; posi := posi+1; until (Zeile[posi] = '"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Name := Name + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Vorname := Vorname + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Stdg := Stdg + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Email := Email + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Tel := Tel + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat angemeldet := angemeldet + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); end;
posi := posi+3; if (Zeile[posi]<>'"') then begin repeat Gruppe := Gruppe + Zeile[posi]; posi := posi+1; until (Zeile[posi] ='"'); end else begin Showmessage ('Kein Eintrag'); Showmessage ('Kein Feld dieser Anmeldung wurde ausgefüllt'); end;
table1.append; Nr_e.Text := Matrnr; Name_e.Text := Name; Vorname_e.Text := Vorname; Stdg_e.Text := Stdg; Email_e.text := Email; Tel_e.text := Tel; angemeldet_e.text := angemeldet; Gruppe_e.text := Gruppe; table1.post;
Listbox1.Items.Delete(1); end;
//------------------------------------------------------------------------------ //Verantwortlich für das Löschen der 1. Listbox procedure TAnmeldung.loeschenClick(Sender: TObject); begin Listbox1.clear; einlesen.enabled := false; Vergleichen.enabled := false; loeschen.enabled := false; end;
//------------------------------------------------------------------------------ //Checkboxen deaktivieren; Angabe ob DB fehlt; Laden Der TXT-Matrikelnummern procedure TAnmeldung.FormCreate(Sender: TObject); var verz : string; begin dbcheckbox2.checked := false; dbcheckbox3.checked := false; verz := ExtractfilePath(ParamStr(0)); Table1.active := false; try Table1.DatabaseName := verz; Table1.Tablename := 'Melden.db'; Table1.active := true; except Messagebeep(0); Showmessage('Die Tabelle Melden.db befindet' + #10#13 + 'sich nicht im aktuellen Verzeichnis'); end; Showmessage ('Bevor Sie die Daten der .CSV in der Datenbank speichern, müssen Sie die Matrikelnummer vergleichen.'); Memo1.Lines.LoadfromFile('Nr.txt'); end;
//------------------------------------------------------------------------------ //Verantwrotlich für das Vergleichen de Matrikelnummern procedure TAnmeldung.VergleichenClick(Sender: TObject); var
Matrnr : string; Zeile : string; posi,i : integer; begin Label3.visible := true; Label3.caption := 'Die Listbox hat '+ inttostr(Listbox1.Items.count) +' Zeilen'; for I:= Listbox1.Items.Count to 1 do begin if (Listbox1.Items.count > 1) then begin loeschen.enabled := true; Einlesen.enabled := true; end else begin ShowMessage ('Es sind keine weiteren Einträge zum übernehmen vorhanden.Die Listbox wird jetzt geleert!'); Listbox1.clear; vergleichen.enabled := false; loeschen.enabled := false; einlesen.enabled := false; Label3.caption := 'Die Listbox hat '+ inttostr(Listbox1.Items.count) +' Zeilen'; exit; end; end;
Zeile := Listbox1.Items[1]; posi := 2;
if (Zeile[posi]<>'"') then begin repeat Nr := Nr + Zeile[posi]; posi := posi+1; until (Zeile[posi] = '"'); end; Matr_e.Text := Nr;
{if vorhanden(Memo1,Matr_e.text) then begin Showmessage('Diese Nummer ist schon vorhanden'); Einlesen.enabled := false; Listbox1.Items.Delete(1); end else begin Memo1.Lines.Add (Matr_e.text); Memo1.Lines.Savetofile('D:\Delphi-Projekte\NR.txt'); Einlesen.enabled := true; end;} Label3.caption := 'Die Listbox hat '+ inttostr(Listbox1.Items.count) +' Zeilen'; end;
//------------------------------------------------------------------------------ //Aktiviert das Editfeld Absloviert am procedure TAnmeldung.DBCheckBox2Click(Sender: TObject); begin Absolviert_E.enabled := DBcheckbox2.checked; end;
//------------------------------------------------------------------------------ //Aktiviert das Editfeld Absolviert am procedure TAnmeldung.Table1AfterScroll(DataSet: TDataSet); begin Absolviert_E.Enabled := DBcheckbox2.Checked; Absolviert_e.Color := clwindow; end;
procedure TAnmeldung.Table1PostError(DataSet: TDataSet; E: EDatabaseError; var Action: TDataAction); begin Action := daAbort; Showmessage ('Sack'); end;
end. |
Mit ganz freundlichen Grüßen
Templar
_________________ a metal heart is hard to tear apart
Zuletzt bearbeitet von Templar am Di 19.11.02 15:51, insgesamt 1-mal bearbeitet
|
|
wwerner
      
Beiträge: 185
|
Verfasst: Di 19.11.02 15:46
Bekommst du die Fehlermeldung auch außerhalb der IDE?
_________________ Gruß
Wolfgang
----------
zu hause ist es doch am schönsten
|
|
LCS
      
Beiträge: 1305
Erhaltene Danke: 1
WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
|
Verfasst: Di 19.11.02 15:52
Das wäre jetzt auch meine nächste Frage gewesen 
_________________ Der BH ist für die Brust, der Plan ist für'n Ar...
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 15:53
Ausserhalb der Wer? IDE?
MFG Templar
_________________ a metal heart is hard to tear apart
|
|
wwerner
      
Beiträge: 185
|
Verfasst: Di 19.11.02 15:58
@LCS
Soll ich?
OK
IDE ist deine Entwicklungsumgebung (Intergrated development environment). Starte mal die EXE direkt
_________________ Gruß
Wolfgang
----------
zu hause ist es doch am schönsten
|
|
Templar 
      
Beiträge: 18
|
Verfasst: Di 19.11.02 16:12
Sowas muss einem ja auch mal gesagt werden
Bin halt nicht der Supercrack auf dem Gebiet.
Nun aber zum Thema.
Nein, ich bekomme die Meldung net, zum Glück.
Aber das Prog schreibt den Satz erstma rein, aber tut den net speichern.
Am bsten löse ich das doch mit dem Try beim Button einlesen (Ich hoff ihr versteht meinen Quelltext) oder?
_________________ a metal heart is hard to tear apart
|
|
|