Aktivitätsanzeige



  • Hallo,

    ich habe gerade (vor ca. 2 Tagen) dieses überaus kompetente Forum gefunden - lob an alle Aktiven.

    So nun zu meinem Problem:

    Ich schreibe auf der Windows Konsole ein Programm für einen Watchdog. Der Watchdog wird alle x Sekunden "getriggert", also angestoßen, sodass der Rechner nicht neu gestartet wird. Das Programm soll eine Art Aktivitätsanzeige haben z.B. abwechselnd ein "/" dann ein "\". Früher hatte ich das mit

    system('CLS');
    

    gelöst (Also "/" ausgeben, Bildschirm löschen und "\" ausgeben. Danach wieder von vorne)

    was fürchterlich langsam war, da wir nur einen Celeron 300MHz haben (PC/104+ System, falls das jemanden was sagt).

    Ich möchte also dem Benutzer anschaulich machen das sein System zur Zeit getriggert wird.

    Hat dazu irgend jemand eine schöne Idee?

    Grüße und Dank dafür

    P.S. Da ich gerade eine neue Stelle angetreten habe, wäre eine SCHÖNE Lösung willkommen.



  • Na bei system(CLS) wundert mich das nicht 🙄

    Wenn dein Compiler die conio.h zur Verfügung stellt, dann gibts eine ganz einfache Lösung mit der Funktion gotoxy(). Damit kannst du an eine bestimmte Position am Bildschirm springen. Ansonsten gibts auch sicherlich eine WinAPI-Funktion dazu. Schau doch auch einfach mal in die Konsolen-FAQ, da sollte es auch schon was zu dem Thema geben.

    Die conio.h enthält übrigens auch die Funktion clrscr() um den Bildschirm zu löschen 😉



  • ... geht clrscr(); unter Dev-C++ nicht. Zu neu, zu alt, zu was weiss ich.
    Und gotoxy() dürfte auf der Konsole auch nur begrenztem Nutzen sein, oder?

    Ich werde die Konsolenversion nur als vorläufig bezeichnen und irgendwann, wenn ich eingearbeitet bin, ne "ECHTE" Windows Version schreiben - so für die Mausschubser.

    Grüße Christian



  • Zu DEV-C++ hab ich so meine Meinung, naja....

    Wie gesagt, es gibt auch WinAPI-Funktionen, die das können (siehe Konsolen-FAQ).



  • hallo?

    schaust du bitte mal ins konsolenfaq wie AJ es betonte? das steht alles zu konsole, farbe, gotoxy, sogar über winapi *lach*, und maus geht auch unter konsole, wer hätte das gedacht..

    also erstmal dort forschen, und auch mal die suchfunktion nutzen, sowas wird jeden tag gefragt.

    und übrigens ist die konsole auch winapi (unter windows natürlich).



  • Wenn ich WinApi nutze, bin ich auf Windows festgelegt. Da unser Messinstrument momentan noch unter Windows XP läuft, ist das kein Problem aber das muss ja nicht so bleibem.
    Wenn ich jetzt WinApi funktionen einsetzte, muss ich nachher, nach einem BS-wechsel, vielleicht wieder rumschauen. Ich hätte halt ganz gerne ECHTES C++, Platformunabhängig.

    Grüße



  • und standard hast du leider keine möglichkeit, gotoxy oder clearscrean zu zaubern.
    solche sachen sind IMMER plattformabhängig.

    ich rate dir: bau dir eine ansicht (mit gotoxy etc..), die du, je nach betriebsystem auswechselst, bzw. über präprozessor auswählst und implemeniere diese dann betriebssystemabhängig.

    ps: unter linux gibt es im übrigen keine conio.h.. irgendwo habe ich noch eine u_conio, ist aber schwer zu finden im netz. du siehst, alles mit plazierung und farbe ist aufwand. dem standard ist die farbe egal 🙂

    pps: und schau dir konzepte an, die oberflächendarstellung von logik trennen 😉



  • Danke für eure Hilfe,

    Fazit = Es gibt keine Standart C++ Funktion die mir die Ausgabe von cout löscht?

    Schade.

    Grüße

    P.S. Wo kam eigendlich das Thema Farbe her? Farbe brauche ich nicht.



  • war nur ein weiteres beispiel für plattformabhängigkeit..

    clearscreen, farbe, positionierung ist immer betriebssystemabhängig.

    so long

    ps: wenns wirklich nur um "scheinbar löschen" geht, kannst du die konsole auch einfach abzählen und drunter neu ausgeben.
    über #include <iomanip> und flags kannst du darüber hinaus einigermaßen formatieren.



  • DipplInsch schrieb:

    Danke für eure Hilfe,

    Fazit = Es gibt keine stan**** C++ Funktion die mir die Ausgabe von cout löscht?

    Schade.

    Grüße

    Richtig erkannt! 🙂

    CLS ist übrigens auch betriebssystemabhängig 😉



  • AJ schrieb:

    CLS ist übrigens auch betriebssystemabhängig 😉

    Das ist ja mein Problem 😞



  • ist ja eigentlich kein problem, wenn du es brauchst, mach die optik halt für jedes betriebssystem extra, die logik bleibt die gleiche.

    eine andere möglichkeit wäre, java zu machen. damit wärst du diese sorge (fast) los.. 🙂


Anmelden zum Antworten