Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi "Console für das eigene Programm" (https://www.delphipraxis.net/83091-console-fuer-das-eigene-programm.html)

EDatabaseError 27. Dez 2006 11:49


"Console für das eigene Programm"
 
:? Ich finde den Titel doof aber was besseres ist mir leider nicht eingefallen.

Mein Ziel ist es irgentwie in dem eigenen Programm eine Texteingabe Shelllike/Console zu haben. Kurz man soll Befehle eintippen können und das Programm soll / darf Meldungen ausgeben.

Leider weiß ich nicht wie ich das am besten anstellen soll....Memo wäre ein Einfall nur dort stört der cursor....

Mfg
Tobi

//edit nein apptype console ist nicht gut ich will auch noch andere sachen wie shapes darstellen

pitti platsch 27. Dez 2006 12:07

Re: "Console für das eigene Programm"
 
guck mal hier http://www.swissdelphicenter.com/de/showcode.php?id=390.
Damit kannst du die Windows-Konsole benutzen und mit Writeln/Readln wie in einer Konsolenanwendung arbeiten.

Einziges Manko: Hat man eine Windows-Konsole in einer GUI-Anwendung und schließt man die Konsole, so wird die ganze Anwendung beendet. Ich weiß nicht wie man das verhindern kann.

pitti

Dragon27 27. Dez 2006 12:17

Re: "Console für das eigene Programm"
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo, sowas habe ich schon mal gemacht.... ist aber nicht perfekt...... aber du kannst es dir mal ansehen!

Das Ding hat einen Editor und ne Konsole... außerdem ein Programm für die Hilfe.



PS: Den Cursor kannst du für dein Programm jederzeit deaktivieren...

Gruß

r2c2 27. Dez 2006 12:27

Re: "Console für das eigene Programm"
 
Hallo EDatabaseError :hi:
hab vor Kurzem sowas ähnliches programmiert. Hab ne Komponente von TMemo abgeleitet und ggf. Eingaben und Cursoränderungen zugelassen oder nicht. Siehe hier: http://www.delphipraxis.net/internal...ct.php?t=98872

Die Komponente steckt in ConsoleMemo.pas; eine Register-Prozedur ist noch nicht drin.

Insgesamt sind 4 Modi vorgesehen:
- None: verhällt sich wie n ReadOnly-Memo
- ReadInt: ein Integer wird von der Konsole gelesen
- ReadString: ein String wird von der Konsole gelesen
- Prompt(noch nicht implementiert): Es erscheint ein Prompt und fortwährend werden Kommandos gelesen. Ein Ereignis OnCommand informiert über einen eingegebenen Befehl.

Am interessantesten ist für dich wohl der noch nicht implementierte letzte Modus. :stupid: Das Prinzip sollte aber auch aus den anderen klar werden. Du musst einfach verhindern, dass der User da was eingeben kann, wo er nicht soll.

Von der Implementierung her ist das recht einfach gehalten. Auf Performance, etc. wurde nicht geachtet, da das für meinen Zweck nicht nötig war. Kannst dirs ja mal angucken...

Zur Fertigstellung kann ich nicht viel sagen. Ich schreib in Jannuar Abi und hab dementsprechend wenig Zeit...

mfg

Christian

EDatabaseError 27. Dez 2006 12:48

Re: "Console für das eigene Programm"
 
Danke an alle!

Die Methode von pitti platsch gefällt mir derzeit am besten...mal schaun was sich da noch alles damit anstellen lässt!

und Welcome in der DP pitti platsch!

St.Pauli 27. Dez 2006 12:52

Re: "Console für das eigene Programm"
 
Benutz doch einfach ein Canvas und zeichne den Text drauf...

EDatabaseError 27. Dez 2006 12:58

Re: "Console für das eigene Programm"
 
:? das wär ein zu großer Aufwand...

einziges Manko an der Version von pitte ist das ich nur eine aktive console öffnen darf und das hauptprogramm disabled ist bis die console fertig ist.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:11 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz