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:

Konsolenfenster als Debug-Fenster

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



Anmeldungsdatum: 04.05.2005
Beiträge: 1875
Wohnort: D59192

BeitragVerfasst am: 21.09.2005, 08:29    Titel: Konsolenfenster als Debug-Fenster Antworten mit Zitat

Hallo,
die Idee ist nicht neu, da aber in FB 0.15 das Ansprechen des Konsolefensters geändert wurde (open cons, früher open "cons:") habe ich mit Hilfe der __FB_VER_MINOR__ Information eine Variante für beide FB-Versionen geschrieben.
Code:
'9/15/05 - Konsolenfenster als Debug-Fenster - Volta -
'als Konsolenanwendung kompilieren, sollte ab FB 0.14 funktionieren.
'evtl. das Hauptfenster verschieben um das Konsolenfenster sichtbar zu machen!
Option Explicit
Screen 13 'jeder andere screen, aber erstmal nicht als Vollbild

'Printanweisung für das Konsolenfenster,
'kann als Debug-Fenster gute Dienste leisten.
Dim Konsole As Integer
Konsole = freefile
If __FB_VER_MINOR__ > 14 Then
 Open CONS for output as #Konsole 'in FB 0.15
Else
 Open "CONS:" for output as #Konsole 'in FB 0.14
End If
print #Konsole ,"Bin' auch hier"

'Normale print, input im screen-Fenster
Dim s As String
Print "Das Hauptfenster verschieben wenn das Konsolenfenster nicht sichtbar ist!"
Input "Dein Name: ",s
Print "Guten Tag "+s

Print #Konsole, "Tach auch.. "+s
Print #Konsole,"Hier lassen sich ( zur Ablaufverfolgung )"
Print #Konsole,"Variablen, Text oder Fehlermeldungen ausgeben."
Dim x As Integer
For x= 1 To 10
Print #Konsole,x,
Next
Print #Konsole,
Print #Konsole,"verdisch..."

Print "zum beenden Taste betaetigen.."
'ob close hier erforderlich ist? aber man ist ja ordentlich!
Close #Konsole
sleep

Gruß
Volta
EDIT/
hier http://forum.qbasic.at/viewtopic.php?p=16788#16788 habe ich eine etwas verbesserte FB-Versionsabfrage zugefügt.
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
d.j.peters
Gast





BeitragVerfasst am: 22.09.2005, 01:53    Titel: Antworten mit Zitat

Hallo volta,
ich benutze ein Macro für Debug Konsole Prints der Vorteil ist wenn DEBUG nicht definiert ist dann wird das Macro "dprint()" nicht mit dem Programm kompiliert ohne alle dprints() manuell löschen zu müssen.

Code:
#define DEBUG
#ifdef DEBUG
#  define dprint(msg) open cons as #1:print #1,"debug: ";msg:close #1
#else
#  define dprint(msg):
#endif

dprint("Debug Version")


Code:

#ifdef DEBUG
#  define dprint(msg) open cons as #1:print #1,"debug: ";msg:close #1
#else
#  define dprint(msg):
#endif

dprint("Debug Version") 'wird nicht mehr mit Kompiliert


Im Zusammenhang mit Deiner Versionsabfrage ist es dann noch nützlicher.

Grüsse Joshy
Nach oben
volta



Anmeldungsdatum: 04.05.2005
Beiträge: 1875
Wohnort: D59192

BeitragVerfasst am: 24.09.2005, 16:53    Titel: Antworten mit Zitat

Hallo Joshy,
gut, knapp und einfach zu handeln, wie ich es mag. lächeln
Nur stört mich das #1, ich hab es nicht probiert aber wenn so auch andere Zugriffe geöffnet werden kommt es zu Problemen. zwinkern
Gruß
Volta
_________________
Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
d.j.peters
Gast





BeitragVerfasst am: 25.09.2005, 03:29    Titel: Antworten mit Zitat

Ein bischen solltest du ja auch hinzufügen zwinkern
Code:
#define DEBUG
#ifdef DEBUG
  dim shared hFile as integer
#  define dprint(msg) hFile=FreeFile:open cons as #hFile:print #hFile,"debug: ";msg:close #hFile
#else
#  define dprint(msg):
#endif

Spass bei Seite wenn Du jetzt noch Deine Versionsabfrage einbaust dann ist es echt nützlich.

Der "Trick" wenn man es so nennen möchte ist ja eigentlich der Doppelpunkt.
Code:
#define dprint(msg):

Sonnst würde es nicht funktionieren.

Grüsse Joshy

PS. Dein WINDOWS FreeBASIC Downloadlink ist veraltet zwinkern
Nach oben
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Allgemeine Fragen zu FreeBASIC. 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