Textausgabe in Window mit GCC

Gast #1320328
Lesenswert?

Hallo alle,

welches System kann man für eine Einfache Textausgabe in ein Fenster 
verwenden?

Für einfache Testprogramme, die in der console laufen, kann ich einfach 
printf ... benutzen.

Welche einfache Möglichkeit gibt es, den Text in ein Fenster auszugeben?

Es gibt verschiedene GUI-Klassenlibraries wie z.B. QT, WxWidgets ..
Die Einarbeitung in eines dieser System scheint mir aber ziemlich 
aufwendig.

Danke für die Hilfe,
chris
Moderator Persönliche Seite #1320372
Lesenswert?

chris schrieb:

> Es gibt verschiedene GUI-Klassenlibraries wie z.B. QT, WxWidgets ..
> Die Einarbeitung in eines dieser System scheint mir aber ziemlich
> aufwendig.

Wird dir aber kaum was anderes übrig bleiben, das "Hello world" in
einem Fensterladen (egal, ob der nun von Winzigweich oder vom MIT
kommt) ist nun einmal nicht mehr in einer Zeile Code abzuhandeln.

Allerdings dürfte ein Template für eine simple Applikation, die nur
einen Bereich besitzt, in dem man Text abladen kann, relativ schnell
gezimmert sein.  Je nach Toolkit gibt's dafür noch Hilfswerkzeuge,
die dir ein Gerippe für sowas zimmern.

Du musst allerdings prinzipiell umdenken.  Fensterläden wollen
regelmäßig bedient werden, damit sie ihre eigenen Hausaufgaben
erledigt bekommen (dazu gehört minimal die Reaktion auf Anforderungen
von außen, bestimmte Teile der Applikation neu zu zeichnen, weil
bspw. bislang ein Fenster davor war, jetzt aber dort was dargestellt
werden muss).  Damit kann deine eigentliche Applikation nicht mehr
die ganze Zeit im Vordergrund beliebig über die Resource CPU
verfügen.  Entweder musst du die Vordergrundaufgabe in kleine
Häppchen einteilen und zwischendrin den Fensterladen fragen, ob er
auch was zu tun hätte, oder aber du musst dich mit Multithreading
vertraut machen.
Gast #1320394
Lesenswert?

>Du musst allerdings prinzipiell umdenken.  Fensterläden wollen
>regelmäßig bedient werden, damit sie ihre eigenen Hausaufgaben
>erledigt bekommen

Das Problem ist: Ich will nicht umdenken. Alle Templates, die ich so 
sehe, erfordern einen ziemlichen Einarbeitungsaufwand. Ich verstehe 
nicht, warum nicht mal jemand ein Fensterchen gemacht hat, bei dem des 
Textausgabe und eine Tastatureingabe gibt, die man mit putchar und 
getchar ansprechen kann und vielleicht sogar noch den Cursor 
postionieren kann.
Gast #1320401
Lesenswert?

chris schrieb:

> Das Problem ist: Ich will nicht umdenken. Alle Templates, die ich so
> sehe, erfordern einen ziemlichen Einarbeitungsaufwand. Ich verstehe
> nicht, warum nicht mal jemand ein Fensterchen gemacht hat, ...

Klar, wer nicht denken will, versteht nix. Irgendwie logisch.
Moderator Persönliche Seite #1320415
Lesenswert?

chris schrieb:

> Ich verstehe
> nicht, warum nicht mal jemand ein Fensterchen gemacht hat, bei dem des
> Textausgabe und eine Tastatureingabe gibt, die man mit putchar und
> getchar ansprechen kann und vielleicht sogar noch den Cursor
> postionieren kann.

Weil das keine große ,,Kundschaft'' hat.

Das, was du willst, ist eigentlich schon mit einem Terminalemulator
am besten abgedeckt.  Dein Pech, dass ebendieser Emulator unter
Windows (oft ,,DOS-Fenster'' genannt, obwohl da schon lange nichts
mehr von MS-DOS dabei ist) wohl eher zu den stiefmütterlich
gepflegten Teilen von MS Windows gehört.  Die Emulatoren der Unix-
Welt haben da auch in den letzten Jahren schon etwas mehr an
Pflege erlebt, und zusammen mit sowas wie Curses als API kann man
mehr oder minder brauchbare zeichenbasierte Applikationen zimmern.
(Wie viel Pflege da mittlerweile drin steckt, merkt man dann, wenn
man mal den w3m mit Unterstützung zur Darstellung von Bildern erlebt
hat: da läuft ein eigentlich textorientierter Webbrowser in einem
xterm und rendert dir fröhlich all die normalen Bilder der Webseiten
mit in das Fenster, reagiert auf Mausklicks etc.)

Wenn man eine richtige Applikation machen will, braucht man ganz
schnell viel mehr als das:

. Menüs
. copy&paste
. Container, um verschiedene Teile anordnen zu können

Einen brauchbaren Kompromiss stellen für viele Fälle irgendwelche
GUI-Einbindungen in Scriptsprachen dar, angefangen bei Tcl/Tk als
der ältesten ihrer Art.
Gast #1320882
Lesenswert?

>Du könntest Dir z.B. mal AutoIt anschauen:
>http://www.autoitscript.com/autoit3/

Das macht keinen schlechten Eindruck. Aber ich befürchte, damit kann ich 
das Problem der Textausgabe nicht lösen. Mein Programm gibt ja ständig 
per printf Zeichen aus und diese sollen synchron dargestellt werden.

>Das, was du willst, ist eigentlich schon mit einem Terminalemulator
>am besten abgedeckt.

Da hast Du völlig recht. Mit dem Linux Terminal ( console ) bin ich 
völlig zufrieden. Dort kann ich per "Escape Sequenz" den Cursor 
positionieren und die Schrift einfärben.

Mein kleines Projekchen ist den Propeller Emulator auf den PC zu 
portieren:

http://www.hobby-roboter.de/forum/viewtopic.php?f=4&t=76

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren