Entwickler-Ecke

Dateizugriff - Zweimal der gleiche Code = zwei verschiedene Ergebnisse


der arme Programmierer - Mo 15.07.02 22:52
Titel: Zweimal der gleiche Code = zwei verschiedene Ergebnisse
:cry:
Hallo,

ich habe folgenden Programmcode:

Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
library Kundendaten; 

uses 
  SysUtils, Classes, Dialogs, ZMySqlCon, Forms, 
  unit_Datenmodul_Kunden in 'unit_Datenmodul_Kunden.pas' {Datenmodul_kunden: TDataModule}, 
  frm_lst_KundenForm in 'frm_lst_KundenForm.pas' {frm_lst_Kunden}; function Connect_SQL (var DB: TZMySqlDatabase): boolean; stdcall; external 'session.dll' {$R *.RES} procedure Verwalte_Kundendaten; stdcall; 
begin 
Datenmodul_kunden := TDatenmodul_kunden.Create (Application); 
if not Connect_SQL (Datenmodul_Kunden.Datenbasis) then 
   begin showmessage ('Verbindung konnte nicht hergestellt werden'); 
         Application.Terminate; 
   end; 
frm_lst_Kunden := Tfrm_lst_Kunden.Create (Application); 
frm_lst_Kunden.close; frm_lst_Kunden.ShowModal; 
end; exports Verwalte_Kundendaten; begin 
end.


Das merkwürdige an diesem Code ist, dass das Formular frm_lst_Kunden zunächst geschlossen werden muss, und dann erst modal dargestellt werden kann. Ebenso merkwürdig ist, dass das Formular nicht in der Größe geöffnet wird wie es in der Entwicklungsumgebung entworfen wurde.

Weiterhin merkwürdig ist, dass fast der selbe Code innerhalb einer anderen DLL erwartungsgemäss ausgeführt wird.

Ich kann mir nicht erklären,warum bei o.g. Code mit dem frm_lst_Kunden.Create das Formular bereits auf dem Bildschirm erscheint.

Kann mir jemand helfen?

Danke


Alfons-G - Di 16.07.02 09:53

Hast Du vielleicht im onCreate-Ereignis des Formulars Code, welcher das Formular anzeigt, also show aufgerufen?
Damit kann man es nachvollziehen.

:?: