mikrocontroller.net

Forum: PC-Programmierung Visual C++ Einfache Fragen


Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Shift-Pfeil-hoch Entf

Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ok. Danke.

Autor: Chris (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Da hast du dich aber elegant um des Pudels Kern drumrumgedrückt...

Autor: FzK_SAKI (Gast)
Datum:

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

Autor: Uhu Uhuhu (uhu)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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)

Autor: Bobby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Such mal nach "ANSI Terminal Steuersequenzen"

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
... die ANSI-Steuersequenzen sind in der Windows-Konsole ohne Funktion.

Autor: Bobby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schade, komm halt aus der Linux-Ecke.

Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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

Autor: Rufus Τ. Firefly (rufus) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht 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?

Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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.

Autor: Bobby (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du kannst Dateien nur einbinden, wenn du sie hast.

Autor: FzK_SAKI (Gast)
Datum:

Bewertung
0 lesenswert
nicht 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)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.