Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi GUI Anwendung mit Consolen-Ausgabe (https://www.delphipraxis.net/49312-gui-anwendung-mit-consolen-ausgabe.html)

Olli 9. Jul 2005 20:59

Re: GUI Anwendung mit Consolen-Ausgabe
 
Zitat:

Zitat von MrKnogge
Muss ich da etwas beachten, oder kann ich einfach ganz normal mit ReadLn und WriteLn arbeiten ?

Nichts zu beachten. Wie gesagt, das Problem ist, daß der Loader dafür sorgt, daß dein Prozess die Konsolenhandles erbt oder eine neue Konsole erstellt. Bei GUI-EXEs geht das nicht.

Bei einer normalen CUI-Anwendung mußt du nichts beachten. Writeln/Readln alles normal!

marabu 9. Jul 2005 21:05

Re: GUI Anwendung mit Consolen-Ausgabe
 
Hallo Christian,

wenn du die eigentliche Funktionalität deines Programms von deinem GUI trennst, dann könntest du deine Anwendung in Abhängigkeit von ParamCount das Konsolfenster oder dein VCL MainForm zeigen lassen.

ReadLn() und WriteLn() sind etwas ganz Spezielles, ich bin da mit weniger zufrieden.

marabu

MrKnogge 9. Jul 2005 21:10

Re: GUI Anwendung mit Consolen-Ausgabe
 
Wie meinst du das ?

Die Prozeduren/Funktionen sowie den eigentlichen Programm-Ablauf hab ich schön für sich gehalten, die GUI wird nur für die Ein/Ausgabe benötigt.

Aber was genau meinst du :gruebel:
Lieber die Funktion benutzen die du vorher gepostest hast ?

Zitat:

Zitat von marabu
ReadLn() und WriteLn() sind etwas ganz Spezielles, ich bin da mit weniger zufrieden.

Warum bist du damit nicht zufrieden ?

marabu 9. Jul 2005 21:24

Re: GUI Anwendung mit Consolen-Ausgabe
 
Wenn du schon alles sauber getrennt hast, um so besser. Dass du überhaupt erwägst beide Oberflächen (Konsole und GUI) anzubieten, lässt mich darauf schließen, dass dein Programm das GUI eh nur zum Einstellen der Parameter hat. Dann ist ja eigentlich alles ganz einfach. Im Projekt-Quelltext bringst du sowas ähnliches unter:

Delphi-Quellcode:
if ParamCount > 0 then begin
  CheckParams();
  Execute();
end else begin
  with Application do begin
    Initialize;
    CreateForm();
    Run;
  end;
end;
In deiner MainForm hast du wahrscheinlich einen Button, der die Verarbeitung (Execute() in meinem pseudo code) anstößt.

ReadLn() und WriteLn() sind etwas ganz Spezielles, weil sie sich in mehreren Punkten von einer normalen Pascal procedure unterscheiden. Die lassen sich nicht exakt nachbilden. Deshalb bin ich mit weniger zufrieden - in meiner eigenen Unit habe ich nur ReadStr() und WriteStr().

marabu

MrKnogge 9. Jul 2005 21:30

Re: GUI Anwendung mit Consolen-Ausgabe
 
Die Idee gefällt mir, werd's gleich mal umsetzen.

Mit welchem Befehl soll ich deiner Meinung nach die Consolen-Ausgabe machen ?
WriteLn,
WriteStr,
oder wie du's oben gepostet hast ?

marabu 9. Jul 2005 21:41

Re: GUI Anwendung mit Consolen-Ausgabe
 
Liste der Anhänge anzeigen (Anzahl: 1)
Schau mal rein - vielleicht hilft es dir bei deiner Entscheidung...

marabu

MrKnogge 9. Jul 2005 21:45

Re: GUI Anwendung mit Consolen-Ausgabe
 
Danke, ich werd's mir ansehen!


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:01 Uhr.
Seite 2 von 2     12   

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 by Thomas Breitkreuz