Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht Das deutsche QBasic- und FreeBASIC-Forum
Für euch erreichbar unter qb-forum.de, fb-forum.de und freebasic-forum.de!
 
FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen  RegistrierenRegistrieren
ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin
Zur Begleitseite des Forums / Chat / Impressum
Aktueller Forenpartner:

Farben in der Dateiausgabe

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic.
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Nils



Anmeldungsdatum: 24.03.2006
Beiträge: 191

BeitragVerfasst am: 04.09.2007, 11:20    Titel: Farben in der Dateiausgabe Antworten mit Zitat

Hallo!

Wie erreiche ich es, dass eine QB - Dateiausgabe farbig dargestellt wird?

Ich habe viele Daten, die ich schon beim Erzeugen nach bestimmten Kriterien durchsuche. Ist das Kriterium erfüllt, dann möchte ich das durch eine Farbhinterlegung oder auch eine andere Schriftfarbe markieren.
Ich spreichere die Daten üblicherwiese in einer *.txt Datei; habe aber bisher nicht erreichen können, dass ich wie bei der BSAusgabe mit Farbe markieren kann.

Kennt sich da jemand aus und kann weiterhelfen?
_________________
Kontrolliert die Politik! Laßt nicht die Politik Euch kontrollieren! Das sind Eure Angestellten! Lasst Sie das spüren!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 04.09.2007, 11:38    Titel: Antworten mit Zitat

In einer txt-datei kann man nicht farbig schreiben.
aber in eine doc-datei oder in eine html-datei. Bei html musst du nur den html-code in die datei schreiben und die datei halt mit der endung .html abspeichern.

beispiel:

html-code:
Code:

<html>
<body color=red>dies wird in rot angezeigt</body>
</html>


in bin mich nicht mehr sicher ob das stimmt. das letzte mal als ich html-programmiert habe war vor 2 jahren mit den Augen rollen (meine erste programmiersprache happy)

Du fügst den code einfach zeile für zeile ein.

beispiel:
Code:

print #1, "<html>"
print #1, "<body color=red>hallo</body>
print #1, "</html>"


anzeigen kannst du die datei mit deinem webbrowser.

PS: korrigiert mich, wenn ider html-code falsch ist happy
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Nils



Anmeldungsdatum: 24.03.2006
Beiträge: 191

BeitragVerfasst am: 04.09.2007, 12:16    Titel: Antworten mit Zitat

HiKing -01 ich habe keine Ahnung von Hypertext.

Kann ich den einfach meine Daten und *.html bzw. *.doc speichern und ich habe automatisch das korrekte Format?

Kann ich denn statt mit Farbe in einem *.txt-File irgendwie anders markieren?

Nils
_________________
Kontrolliert die Politik! Laßt nicht die Politik Euch kontrollieren! Das sind Eure Angestellten! Lasst Sie das spüren!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 04.09.2007, 12:34    Titel: Antworten mit Zitat

Wie schon gesagt, Textdateien können keine Farbe. Vielleicht kannst du was mit dem RTF-Format anfangen, damit habe ich mich aber nicht intensiv beschäftigt.
Wenn du als *html speichern willst, solltest du dir vorher das HTML-Format genauer ansehen. Du kannst zwar jeden Text mit der Endung .html speichern, aber deswegen ist es noch kein HTML-Format.

Wenn du den Text dagegen wiederum in QBasic anzeigen lassen willst, dann gibt es schon Möglichkeiten, Definitionen für Farbe einzufügen.

Unter *.doc zu speichern, ist eine schlechte Idee. In diesem Format korrekt zu speichern, dürfte eine ganze Reihe Wissen und Arbeit voraussetzen. zwinkern

Nachtrag: Nichtfabige Standardmarkierungen (z. B. in Emails) sind _Unterstreichungen_ oder *Fettdruck*.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.


Zuletzt bearbeitet von nemored am 04.09.2007, 12:37, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 04.09.2007, 12:36    Titel: Antworten mit Zitat

Nils hat Folgendes geschrieben:
HiKing -01 ich habe keine Ahnung von Hypertext.


Es gibt viele Tutorials über html. Einfach mal bei Google schauen.

Nils hat Folgendes geschrieben:

Kann ich den einfach meine Daten und *.html bzw. *.doc speichern und ich habe automatisch das korrekte Format?


Wenn du html-code in eine datei schreibst hast du automatisch eine html-datei (solange sie mit .html endet).
In eine html-datei kannst du auch nur-text schreiben, dann wird dieser text halt ohne formatierung im browser angezeigt.

bei doc, gibts auch so einen ähnlichen code wie bei html. aber ich bin mir da nicht sicher.

Nils hat Folgendes geschrieben:
Kann ich denn statt mit Farbe in einem *.txt-File irgendwie anders markieren?


Du könntest verschiedene Abschnitte des Textes in Variablen zusammenfassen, und wenn ein Abschnitt markiert werden soll, dann machst du es so:

abschnitt1$ = "Hallo ich bin Nils"

markierter_text$=abschnitt1$

In markierter_text$ ist dann der markierte text gespiechert.

DU kannst es auch so machen:

abschnitt1$="hallo ich bin Nils"
abschnitt2$="Ich bin so und so viel jahre alt"
abschnitt3$="Und wohne dort"

markiert_rot$=abschnitt1$
markiert_gelb$=abschnitt2$
markiert_blau$=abschnitt3$

wenn du es ganz genau machen willst, musst du halt jedes wort in eine variable fassen.

zum Beispiel:

wort1$="hallo"
wort2$="ich"
wort3$="bin"
wort$$="Nils"

markiert_rot$ = wort1$ + wort2$

so wird "hallo" und "ich" als rot markiert.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 04.09.2007, 12:44    Titel: Antworten mit Zitat

King-01 hat Folgendes geschrieben:
Es gibt viele Tutorials über html. Einfach mal bei Google schauen.

Nimm http://de.selfhtml.org happy

Zitat:
Wenn du html-code in eine datei schreibst hast du automatisch eine html-datei (solange sie mit .html endet).
In eine html-datei kannst du auch nur-text schreiben, dann wird dieser text halt ohne formatierung im browser angezeigt.

Ist so nicht ganz richtig. Wenn die Datei gemäß HTML-Spezifikation geschrieben ist, dann ist es eine HTML-Datei. Die Endung ist zunächst unwichtig; allerdings wird sie verwendet, um der Software zu sagen, was sie mit der Datei anfangen soll.
Eine reine Textdatei ist - auch mit .html-Endung - keine HTML-Datei. Der Browser zeigt dann zwar den (reinen) Text an, aber HTML ist es halt nicht.

Zitat:
bei doc, gibts auch so einen ähnlichen code wie bei html. aber ich bin mir da nicht sicher.

.doc ist ein proprietäteres Format. Dazu gibt es keine offizielle Dokumentation.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 04.09.2007, 12:49    Titel: Antworten mit Zitat

Nochmal ein Nachtrag:
Außer _Unterstreichungen_ und *Fettdruck* kann man natürlich auch BLOCKBUCHSTABEN verwenden (Befehl ucase)
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 04.09.2007, 13:33    Titel: Antworten mit Zitat

@King01:
Naja, HTML ist bestenfalls eine Seitenbeschreibungssprache.

@Nils:
So wie ich das sehe, geht es dir nur darum, dass die jeweilige Zeile farbig auf dem Bildschirm ausgegeben wird, wenn irgendein Kriterium zutrifft. Im nachfolgenden Beispiel markiert das Programm alle Zeilen, die eine Zahl zwischen 10 und 20 enthalten mit weiß, die restlichen mit hellgrau.
Code:

COLOR 7
OPEN "datei.txt" FOR INPUT AS #1
DO WHILE NOT EOF(1)
  LINE INPUT #1, zeile$
  IF LEN(zeile$)>=2 THEN
    tmp$=RIGHT$(zeile$, 2)
    IF VAL(tmp$)>10 AND VAL(tmp$)<20 THEN
      COLOR 15
      PRINT zeile$
      COLOR 7
    ELSE
      PRINT zeile$
    ENDIF
  ENDIF
LOOP
CLOSE #1


Solltest du mit einem Befehl nicht zurecht kommen, hilft die QBasic-Online-Hilfe (Cursor hinter das Keyword und F1 drücken).

/edit:
Code korrigiert. Muss natürlich LINE INPUT und nicht INPUT LINE heißen. Danke Skilltronic!
_________________
Eine handvoll Glück reicht nie für zwei.
--


Zuletzt bearbeitet von Mao am 07.09.2007, 14:53, insgesamt einmal bearbeitet
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Nils



Anmeldungsdatum: 24.03.2006
Beiträge: 191

BeitragVerfasst am: 07.09.2007, 10:05    Titel: Antworten mit Zitat

@ King01:
Danke für deine Beitrag. Leider sehe ich nur, das Du da Variablen umbenennts. Nur weil ich ein Variable einer markiert_rot$ übergebe wwird da doch nichts rot, oder?

@ Mao:
Ich krieg da gleich ne Fehlermeldung bei deinem Code. Ist das überhaupt QB Code?

@nemored:

Dank für Deine Beiträge. ioch hab mir schon sowas gedacht. Leider ist da nur ein online Tutorial. Ich bräuchte eines zum direkten Download auf meinem Stick um offline arbeiten zu können.


Nils
_________________
Kontrolliert die Politik! Laßt nicht die Politik Euch kontrollieren! Das sind Eure Angestellten! Lasst Sie das spüren!!!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden AIM-Name
dreael
Administrator


Anmeldungsdatum: 10.09.2004
Beiträge: 2529
Wohnort: Hofen SH (Schweiz)

BeitragVerfasst am: 07.09.2007, 10:55    Titel: Antworten mit Zitat

Früher unter DOS gab es noch ANSI.SYS mit den bekannten Escape-Sequenzen, Du kannst sonst diesen Weg für das Einfügen von Steuerzeichen verwenden. Siehe dazu

http://en.wikipedia.org/wiki/ANSI_escape_code

Praktisches Beispiel:
Code:
OPEN "foobar.txt" FOR OUTPUT AS 1
PRINT#1, "Dies erscheint in " + CHR$(27) + "[33mroter" + CHR$(27) + "[0m Farbe."
CLOSE 1

=>
MS-DOS-Eingabeaufforderung hat Folgendes geschrieben:
C:\BASICPRG>type foobar.txt
Dies erscheint in roter Farbe.
C:\BASICPRG>_


Hinweis: Unter UNIX/Linux wird heute noch intensiv mit diesen Terminalsequenzen bei Konsolenprogrammen (=laufen in einem Telnet bzw. Secure Shell) gearbeitet! Im DFÜ-Zeitalter vor dem Internet waren diese Sequenzen ebenfalls "State of the art" für grafische Darstellungen in einer Mailbox-Oberfläche.
_________________
Teste die PC-Sicherheit mit www.sec-check.net
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen
nemored



Anmeldungsdatum: 22.02.2007
Beiträge: 4702
Wohnort: ~/

BeitragVerfasst am: 07.09.2007, 12:08    Titel: Antworten mit Zitat

Nils hat Folgendes geschrieben:
@nemored:

Dank für Deine Beiträge. ioch hab mir schon sowas gedacht. Leider ist da nur ein online Tutorial. Ich bräuchte eines zum direkten Download auf meinem Stick um offline arbeiten zu können.


Wer suchet (oder auch nur ein bisschen scrollt), der findet. zwinkern
http://aktuell.de.selfhtml.org/extras/download.shtml


Zitat:
@ Mao:
Ich krieg da gleich ne Fehlermeldung bei deinem Code. Ist das überhaupt QB Code?

Wenn die Fehlermeldung beim COLOR kommt, dann liegt das wahrscheinlich daran, dass du ganz am Anfang noch eine SCREEN-Anweisung brauchst.
_________________
Deine Chance beträgt 1:1000. Also musst du folgendes tun: Vergiss die 1000 und konzentriere dich auf die 1.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
King-01
gesperrt


Anmeldungsdatum: 26.02.2007
Beiträge: 351

BeitragVerfasst am: 07.09.2007, 12:19    Titel: Antworten mit Zitat

Zitat:
Danke für deine Beitrag. Leider sehe ich nur, das Du da Variablen umbenennts. Nur weil ich ein Variable einer markiert_rot$ übergebe wwird da doch nichts rot, oder?


du kannst es aber dann so anzeigen:

color 7
print markiert_rot$

und wenn du etwas anderes rot markieren willst, einfach so machen:

markiert_rot$ = abschnitt2$

und wenn du dann wieder print markiert_rot$ machst, dann wird halt anderer text rot angezeigt.
_________________
[quote="IRC"](22:41:56)<PMedia>Jojo, hats nen Grund warum wir chatten obwohl du grad neben mir sitzt?
...
(23:00:59)<PMedia>USB war erst als Waffe geplant[/quote]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Skilltronic



Anmeldungsdatum: 10.09.2004
Beiträge: 1148
Wohnort: Köln

BeitragVerfasst am: 07.09.2007, 12:50    Titel: Antworten mit Zitat

Nils hat Folgendes geschrieben:
@ Mao:
Ich krieg da gleich ne Fehlermeldung bei deinem Code. Ist das überhaupt QB Code?


Wenn ich in Maos Beispiel
Code:
INPUT LINE #1, zeile$

durch
Code:
LINE INPUT #1, zeile$

ersetze, dann funktioniert es bei mir einwandfrei.

Gruß
Skilltronic
_________________
Elektronik und QB? www.skilltronics.de !
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 07.09.2007, 14:52    Titel: Antworten mit Zitat

Oh, danke Skilltronic! verlegen

@Nils:
Für zukünftige Probleme bitte auch immer die Fehlermeldung mit angeben, genauso wie die Angabe, wo genau ein Fehler auftritt.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu QBasic. Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.

 Impressum :: Datenschutz