Schriftart ändert sich nur, wenn sie auch geöffnet wurde?
Übersicht

![]() |
M0rgensternBetreff: Schriftart ändert sich nur, wenn sie auch geöffnet wurde? |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hallo an alle.
Ich habe hier gerade ein Problem, das mich sehr verwundert. Mein Programmtext sieht so aus, an der Stelle an der die Schriftart geladen wird: Code: [AUSKLAPPEN] Global SchriftArt = LoadFont("gfx\Final Frontier.ttf", 20) ;Hier wird eine beigefügte Schriftart geladen, damit das Programm schöner aussieht.
SetFont SchriftArt ;Die Schriftart wird hier ausgewählt, damit sie auch benutzt wird. (Der Code ist nur so deutlich kommentiert, da ich ihn weitergeben werde.) Graphics wird schon DAVOR gesetzt und ich benutze Print. Erst dachte ich, ich hätte den falschen Namen angegeben, aber es stimmt alles. Er hat mir sogar schon mit der SChriftart geschrieben. Dann hab ich das Programm beendet, und ohne was zu ändern, wieder gestartet, da hat ers auf einmal nicht in der eingestellten SChirftart geschrieben. Nach einigem hin und her ist mir dann durch Zufall folgendes aufgefallen: WEnn ich die .ttf Datei selbst offen habe (Doppelklick drauf) dann schreibt mein Programm auch alles in der SChirftart. Ich habs grade noch einige male ausprobiert. Wenn die SChriftart geöffnet ist und ich das Programm starte, dann kann ich die SChriftart wieder schließen und er schreibt weiter alles in dieser Schriftart. Sie muss also nur beim Start des Programmes geöffnet sein. Aber das ist ja auch keine Lösung. Was mich vor allem wundert: WARUM ist das so? Wenn es doch noch jemand braucht, hier ist der komplette Text: Code: [AUSKLAPPEN] AppTitle "Zahlendreher 1.0" ;Der Fenstername des Programmes
Graphics 800, 600, 16, 2 ;Graphikmodus initalisieren, damit der Text auch ganz angezeigt wird. Auflösung: 800*600 Pixel Global FTimer = CreateTimer(40) ;Der Framtimer wird hier erstellt damit das Programm nicht zu schnell arbeitet (hohe CPU Auslastung) Global Eingabe$ ;Der String in dem die eingegebene Zimmernummer gespeichert wird. Global Eins ;Rückgabe Variable ob eine Eins vorhanden ist. Global Drei ;Rückgabe Variable ob eine Drei vorhanden ist. Global Vier ;Rückgabe Variable ob eine Vier vorhanden ist. Global Sieben ;Rückgabe Variable ob eine Sieben vorhanden ist. Global klein$ ;WEnn das eingegebene ein Wort ist, werden alle Buchstaben auf Kleinbuchstaben gestellt und in dieser Variable gespeichert. Global Laenge ;In dieser Variable wird die Länge des Strings gespeichert. Global Ende = 0 ;Variable zum beenden des Programmes. Dim Einsen(20) Global NichtEins = 0 Global SchriftArt = LoadFont("gfx\Final Frontier.ttf", 20) ;Hier wird eine beigefügte Schriftart geladen, damit das Programm schöner aussieht. SetFont SchriftArt ;Die Schriftart wird hier ausgewählt, damit sie auch benutzt wird. ;############~Hauptschleife~############ Repeat WaitTimer FTimer Cls Locate 0,0 Print "" Print "" Print "Bitte geben Sie die Zimmernummer ein. 'exit' eingeben um das Programm zu beenden:" Eingabe$ = Input$() Print "" Print "Sie haben " + Eingabe + " eingegeben." Print "" klein$ = Lower(Eingabe$) Laenge = Len(Eingabe$) Print Laenge For i = 1 To Laenge Eins = Instr(Eingabe$, "1", i) If Eins <> 0 Then Einsen(i) = 1 EndIf Drei = Instr(Eingabe$, "3") Vier = Instr(Eingabe$, "4") Sieben = Instr(Eingabe$, "7") Next For i = 0 To Laenge If Einsen(i) <> 1 Then NichtEins = 1 EndIf Next If Drei <> 0 Or Vier <> 0 Or Sieben <> 0 Then Print "" Print "" Print "Bei diesem Schluessel besteht keine Verwechslungsgefahr, da er eine 3, 4 oder 7 enthaelt." If Drei <> 0 Then Print "Der Schluessel enthaelt eine Drei" EndIf If Vier <> 0 Then Print "Der Schluessel enthaelt eine Vier" EndIf If Sieben <> 0 Then Print "Der Schluessel enthaelt eine Sieben" EndIf If NichtEins = 0 Then Print "" Print "" Print "Bei diesem Schluessel besteht keine Verwchslungsgefahr, da er nur aus Einsen besteht." EndIf Else Print "Bei diesem Schluessel besteht Verwechslungsgefahr, da er keine 3, 4 oder 7 enthaelt." EndIf If klein$ = "exit" Then Print "Sicher, dass die beenden moechten? J/N" Eingabe$ = Input$() klein$ = Upper(Eingabe$) If klein$ = "J" Then Ende = 1 EndIf EndIf If Ende <> 1 Then Print "" Print "Beliebige Taste zum Fortfahren druecken." WaitKey EndIf NichtEins = 0 Flip 0 Until Ende = 1 End Danke schonmal im Voraus, Lg, M0rgenstern |
||
Meik |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
So wie ich das sehe hast du nach deiner Hauptschleife nicht FreeFont( font ) gemacht um den Font wieder freizugeben. Keine Ahnung ob es daran liegt aber man kann es ja mal probieren ^^. | ||
![]() |
XeresModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ist der Dateiname des Fonts "Final Frontier.ttf" oder heißt so der Font?
Wie bei LoadFont ![]() Womöglich wird er temporär geladen wenn du die Schirftart öffnest? |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
https://www.blitzforum.de/foru...hp?t=28585 | ||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
![]() |
M0rgenstern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Nicdel, sorry, aber der Beitrag bringt mich nicht wirklich weiter, da er am Ende auf das Ergebnis: "EInmal reicht" kommt.
@ Meik... Ich sehe keinen Zusammenhang zwischen dem FreeFont Befehl und der Tatsache, dass er die Schriftart WÄHREND der Hauptschlefie nicht anzeigt. @ Xeres Die Font heißt "Final Frontier (TrueType)" Also siehst du, dass ich den Fontnamen angebe (oder muss das TrueType auch dazu?) Wenn er es temporär laden würde... Dann würde ich trotzdem nicht verstehen, warum BB selbst die Schriftart nicht läd. Lg, M0rgenstern |
||
![]() |
Nicdel |
![]() Antworten mit Zitat ![]() |
---|---|---|
Bei mir hat es mit 2x laden immer funktioniert, auch wenn einmal nicht ging. Man könnte es wenigstens versuchen. | ||
Desktop: Intel Pentium 4 2650 Mhz, 2 GB RAM, ATI Radeon HD 3850 512 MB, Windows XP
Notebook: Intel Core i7 720 QM 1.6 Ghz, 4 GB DDR3 RAM, nVidia 230M GT, Windows 7 |
![]() |
M0rgenstern |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sorry. HAst Recht.
Ein Versuch wars wert. Hat aber trotzdem nicht geholfen. Trotzdem danke^^ lg, M0rgenstern |
||
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group