Forum: PC-Programmierung Visual C++ Einfache Fragen


von FzK_SAKI (Gast)


Lesenswert?

Hallo!

Ich bin auf der Suche nach einem Befehl in Visual C++ 2004 Express 
edition, der die darüberliegende zeile löscht.
Also zum Beispiel:

printf("Hallo");

So und jetzt will ich einen Befehl schreiben, der nur diese eine Zeile 
löscht.

Kennt jemand so einen Befehl?

FzK_SAKI

von Uhu U. (uhu)


Lesenswert?

Shift-Pfeil-hoch Entf

von FzK_SAKI (Gast)


Lesenswert?

ja, ok. Aber ich meine einen Befehl den ich unter den printf-befehl 
schreibe, sodass der Compiler das löschen dan automatisch macht.

Ich will nähmlich sone Art "Blinkeffect" erstellen.

von Uhu U. (uhu)


Lesenswert?

FzK_SAKI wrote:
> ja, ok. Aber ich meine einen Befehl den ich unter den printf-befehl
> schreibe, sodass der Compiler das löschen dan automatisch macht.
>
> Ich will nähmlich sone Art "Blinkeffect" erstellen.

Das funktioniert nicht. Blinken ist eine Eigenschaft von Bildschirmen 
und printf erzeugt nur einfachen Text. Wenn der auf dem Bildschirm 
ausgegeben wird, wird er zunächst mal nur sequentiell ausgegeben.

Du kannst sowas erreichen, wenn du auf ein Fenster ausgibst, daß Befehle 
interpretieren kann. Du müßtest dann vor dem Text, der blinken soll, den 
Blinkbefehl ausgeben, dann den Text und hinterher den Blinkbefehl wieder 
zurücknehmen.

von FzK_SAKI (Gast)


Lesenswert?

Ok. Danke.

von Chris (Gast)


Lesenswert?

versuch doch sowas:

[pseudocode]

position(1,1);
schrift(weiss);
printf("Hallo");

sleep(500); // millisekunden

position(1,1);
schrift(schwarz);
printf("Hallo");

sleep(500); // millisekunden


[/pseudocode]

so würde es blinken..... musst du nur noch irgendwie in Visual C++ 
umsetzen

von Uhu U. (uhu)


Lesenswert?

Da hast du dich aber elegant um des Pudels Kern drumrumgedrückt...

von FzK_SAKI (Gast)


Lesenswert?

Ist aber ne gute Idee, obwohl ich nicht wüsste, wie ich auf der 
Schelloberfläche von VC++ sowas umsetzen könnte.

von Uhu U. (uhu)


Lesenswert?

Es hätte aber einen großen Nachteil: Dein Programm muß aktiv blinken, 
während Ausgabegeräte, die sowas unterstützen, die Blinkfunktion autonom 
steuern.

Du kannst dein Programm beenden und der Text auf dem Bildschirm blinkt 
fröhlich weiter, so lange bis er gelöscht wird.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Um solche Dinge in Konsolenfenstern zu machen, muss man die 
Win32-API-Funktionen für "Console I/O" verwenden.
Das ist nicht ganz einfach, und Befehle à la "position" existieren 
natürlich nicht.

http://msdn2.microsoft.com/en-us/library/ms683458.aspx

Das Thema wurde in
Beitrag "Re: Formatierte Textausgabe in C"
schon mal diskutiert, dort habe ich einen Link auf eine Library 
gepostet, die einem einfache Funktionen zur Verfügung stellt.

(Der Link funktioniert auch nach annähernd zwei Jahren noch)

von Bobby (Gast)


Lesenswert?

Such mal nach "ANSI Terminal Steuersequenzen"

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

... die ANSI-Steuersequenzen sind in der Windows-Konsole ohne Funktion.

von Bobby (Gast)


Lesenswert?

Schade, komm halt aus der Linux-Ecke.

von FzK_SAKI (Gast)


Lesenswert?

Ich habe noch eine andere frage:

ich include <ComEnumPorts.h>

wenn ich aber compilieren lasse, dann zeigt er mir diesen Fatalerror an:

fatal error C1083: Datei (Include) kann nicht geöffnet werden: 
"ComEnumPorts.h": No such file or directory

Weiß jemand ob ich noch weitere includes benötige oder einfach den 
include von oben anders schreiben muss?

Ich danke schonmal für eine antwort

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Na, diese Fehlermeldung heißt einfach, daß es die Datei "comenumports.h" 
nicht gibt bzw. daß sie nicht dort gefunden wird, wo der Compiler nach 
solchen Dateien sucht.

Was verleitet Dich zur Annahme, daß Du eine solche Datei einbinden 
müsstest?

Weißst Du überhaupt, was #include macht und wofür das gut ist?

von FzK_SAKI (Gast)


Lesenswert?

Ja, das weiß ich. Und ich meine die Datei einbinden zu müssen, da ich es 
so auch auf der Seite: http://members.inode.at/anton.zechner/az/#PROG
über die ComTools erfahren habe.

von Bobby (Gast)


Lesenswert?

Du kannst Dateien nur einbinden, wenn du sie hast.

von FzK_SAKI (Gast)


Lesenswert?

Ja. ich weiß. Es hat sich jetzt auch schon erledigt, und ich bin eine 
ganze Ecke schlauer geworden. ^^
Aber danke für die Bemerkung (<-- Das meine ich nicht sarkastisch)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.