Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 02.07.2007, 21:50 Titel: Graue Leiste (Unten) - u.a.a.a. Fragen |
|
|
Einen schönen guten Abend ihr lieben QB-Programmierer
Ich bin in diesm Forum neu und bin daher ein Anfänger von QB
Ich programmiere normalerweise mit PB Win32-Anwendungen und 2D-Spiele.
Ich möchte gerne MS-DOS-Programme programmieren.
Ich weis, das ist ein Schritt in die Vergangenheit, wenn ich 16 Bit-Applicationen programmieren möchte.
Aber ich möchte es trotzdem mit QB versuchen.
Also bitte habt Verständnis, wenn ich echt keine Ahnung von QB habe. (Außer diese Standard-Befehle, die man in Basic kennt)
Mein Problem ist jetzt, ich möchte gerne unten eine graue Leiste erstellen/zeichnen, aber ich hab da schon meine Probleme
Beispiel: http://freenet-homepage.de/rsbasic/scrn1.jpg
Wie es bei mir aussieht, siehe hier: http://freenet-homepage.de/rsbasic/scrn2.jpg
Hier noch den Source:
Code: |
COLOR 7, 1
CLS
PRINT "Test"
LOCATE 23, 1
COLOR 0, 7
PRINT "Test"
SLEEP 5
|
Könnt ihr mir helfen? 
Zuletzt bearbeitet von RSBasic am 02.07.2007, 22:26, insgesamt einmal bearbeitet |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 02.07.2007, 21:57 Titel: |
|
|
Herzlich Willkommen hier im Forum!
----
Du must den Rest der Zeile lediglich mit genügend Leerzeichen ausfüllen (bei zuvielen macht Q(uick)Basich jedoch einen Zeilensprung).
Das Leerzeichen wird ja schließlich auch geschrieben und im RAM gespeichert und muss somit grau hinterlegt werden.
Grüße, Elvis |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 02.07.2007, 22:03 Titel: |
|
|
@Elvis
Vielen Dank für deine Antwort
Aber wenn ich mit Space die ganze Zeile fülle, dann gibt es immernoch ein Problem.
Es sind zwei Zeilen in Grau, ich habe aber nur eine Zeile mit Space gefüllt.
Was mache ich hier falsch?
Code: |
COLOR 7, 1
CLS
PRINT "Test"
LOCATE 25, 1
COLOR 0, 7
PRINT "Test "
SLEEP 5
|
|
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 02.07.2007, 22:12 Titel: |
|
|
Hallo
Wie Elvis schon sagte, musst Du die Zeile noch mit Leerzeichen auffüllen. Das kannst Du z.B. mit SPC (n) machen. Das schreibt n Leerzeichen.
Ausserdem ist es so, das nach einer PRINT-Anweisung der Cursor automatisch in die nächste Zeile springt, wenn Du ihm nichts anderes sagst. Wenn er sowieso schon in der letzten Zeile ist, erzeugt das folglich einen Zeilenvorschub. So kommt die zweite graue Leiste zustande. Ein Semikolon am Ende der PRINT-Anweisung verhindert das. Die bedeutet, dass in der gleichen Zeile weitergeschrieben werden soll. So sollte es gehen:
Code: | COLOR 0, 1
WIDTH 80, 25
CLS
COLOR 0, 7
LOCATE 25, 1
PRINT "Test"; SPC(76);
DO: LOOP WHILE INKEY$ = "" |
Die DO LOOP-Schleife am Ende wartet nur auf einen Tastendruck, damit das Beispiel nicht beendet und die Leiste gleich wieder überschrieben wird.
Gruß & viel Spass noch hier im Forum
Skilltronic _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 02.07.2007, 22:17 Titel: |
|
|
@Skilltronic
Vielen Dank 1. für deine ausführliche Erklärung und 2. dein Beispiel-Code.
Es funktioniert, danke  |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 02.07.2007, 22:30 Titel: |
|
|
Hallo, hier bin ich wieder
Hoffe es ist kein Problem für euch, wenn ich zurzeit viele Fragen stellen werde
Also ich habe jetzt zwei Fragen:
1. Ich habe jetzt in QB einen String$ erstellt und es klappt auch
Die Frage ist jetzt, mit welchem Befehl kann ich die Zeichen im String zählen? In PB heißt dieser Befehl "Len()"
Wie kann man in QB die Zeichenanzahl eines Strings ermitteln?
2. Ich habe zurzeit mit dem Programm "QuickBasic 4.50" ein Problem, also dieses Programm benutzt von meiner CPU 100 % Auslastung.
Gibt es eine Lösung, dass das Programm nicht mehr in 100 % Auslastung ausgeführt wird?
\\Edit:
Ich habe herausgefunden, dass dieser Befehl "Len" in QB verfügbar ist, aber die Frage besteht noch: Wie wende ich das an? |
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 02.07.2007, 22:42 Titel: |
|
|
Hallo,
für Fragen ist das Forum ja da, also nur zu.
Schon mal in der Hilfe im QB-Editor zu LEN () nachgesehen? In die Klammer hinter LEN kommt entweder der String selbst (in Anführungszeichen), oder die entsprechende Textvariable. Also LEN ("Hallo") oder LEN (t$).
Zur Auslestung verweise ich auf Sebastians Signatur: http://forum.qbasic.at/viewtopic.php?t=2172
Gruß
Skilltronic _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 02.07.2007, 22:46 Titel: |
|
|
@Skilltronic
Vielen Dank
Zitat: |
Schon mal in der Hilfe im QB-Editor zu LEN () nachgesehen? In die Klammer hinter LEN kommt entweder der String selbst (in Anführungszeichen), oder die entsprechende Textvariable. Also LEN ("Hallo") oder LEN (t$).
|
Oh, ich habe die ganze Zeit immer Len <String$> versucht, ist ja klar, dass es nicht funktioniert.
Mein Fehler
PS: Danke für den Link
\\Edit:
So habe ich es gemacht, so wird diese graue Leise nicht länger auch nicht kleiner (durch längeren Text)
Code: |
...
Zeichenanzahl = LEN(Test$)
PRINT Test$; SPC(80 - Zeichenanzahl);
|
|
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 03.07.2007, 00:37 Titel: |
|
|
So macht das Antworten auch Spass, wenn man sieht, der Fragesteller denkt selbst mit. Nicht nur nach dem Motto:
fiktiver Fragesteller hat Folgendes geschrieben: | Ich kapier das immer ned mit den variablen kann mir das einer schreiben? |
Ähnlichkeiten zu lebenden Fragen oder Beiträgen sind natürlich rein zufällig.  _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
Elvis

Anmeldungsdatum: 01.06.2006 Beiträge: 818 Wohnort: Deutschland, BW
|
Verfasst am: 03.07.2007, 15:57 Titel: |
|
|
Wenn du weiterhin ein paar kleine Frage hast, bspw. der Syntax eines nicht ganz einfach zu verstehenden Befehls, kannst du auch in der extra für solche Situationen angelegten Monster-FAQ nachsehen.
Grüße, Elvis |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 03.07.2007, 18:15 Titel: |
|
|
Hallo
Ich habe eine spezielle Frage an euch.
Da dieses CMD-Fenster etwas zu klein für nen Editor ist, frage ich mich, ob einen Alternative-Editor für QB gibt? |
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 03.07.2007, 18:25 Titel: |
|
|
du kannst die programme zawr theoretisch in jedem texteditor schreiben, allerdings hast du dann natürlich nicht mehr die bequemen hilfe- und korrigier-features Du könntest aber die FBIDE (IDE für FreeBasic) ausprobieren, da FB ja fast die selbe Syntax wie QB hat. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 03.07.2007, 18:36 Titel: |
|
|
@Jojo
OK danke für die Info
Aber ab pro pro FB, was ist der Unterschied zwischen FB und QB? (Sorry, dass das ne dumme Frage ist)
Beide programmierte basierte MS-DOS-Programmiersprache? |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 03.07.2007, 18:54 Titel: |
|
|
@Sebastian
Danke  |
|
Nach oben |
|
 |
Skilltronic

Anmeldungsdatum: 10.09.2004 Beiträge: 1148 Wohnort: Köln
|
Verfasst am: 03.07.2007, 20:20 Titel: |
|
|
RSBasic hat Folgendes geschrieben: | Da dieses CMD-Fenster etwas zu klein für nen Editor ist, frage ich mich, ob einen Alternative-Editor für QB gibt? |
Schon Mal probiert, das Fenster mit Alt + Enter auf Vollbild umzuschalten? _________________ Elektronik und QB? www.skilltronics.de ! |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 03.07.2007, 20:28 Titel: |
|
|
@Skilltronic
Diese Tastenkombination kenn ich, aber die Größe des Programms/Fenster wird keinerwegs verändert, sondern nur zum Vollbild gewechselt.
Also ich meine egal ob Vollbild oder nicht, die gleiche Größe bleibt vorhanden, also werden alle Elemente verzerrt.
Beispiel: Im normalen Fenster 17 Zeilen pro Seite, im Vollbild auch nur 17 Zeilen pro Seite.
Das ist sehr wenig Platz, da muss man echt viel Scrollen  |
|
Nach oben |
|
 |
csde_rats

Anmeldungsdatum: 07.01.2007 Beiträge: 2292 Wohnort: Zwischen Sessel und Tastatur
|
|
Nach oben |
|
 |
Jojo alter Rang

Anmeldungsdatum: 12.02.2005 Beiträge: 9736 Wohnort: Neben der Festplatte
|
Verfasst am: 03.07.2007, 20:46 Titel: |
|
|
QB wird unter WinXP / 2k standardmäßig im 50-zeilen-modus gestartet... das "/h" is nur unter alten system notwendig. _________________ » Die Mathematik wurde geschaffen, um Probleme zu lösen, die es nicht gäbe, wenn die Mathematik nicht erschaffen worden wäre.
 |
|
Nach oben |
|
 |
RSBasic
Anmeldungsdatum: 02.07.2007 Beiträge: 18
|
Verfasst am: 03.07.2007, 21:03 Titel: |
|
|
@csderats
Ah danke, durch diesen Parameter "/h" habe ich jetzt wieder 50Z/S
Das war nur wegen diesen Patch von "100 % CPU-Auslastung"
So 50Z/S reichen aufjeden Fall  |
|
Nach oben |
|
 |
|