Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - S.O.P.M.

#31
QuoteIn "alten" Basic Dialekten hat man die Grafik irgendwo hingeschmissen und da lag sie, und man konnte in der Tatsturabrage eine "Warteschleife" einbauen (bis was einegeben wurde).
Genau das war meine Rede. Man hat die Grafik einmal gezeichnet und sie blieb, hier muss sie immer wieder gezeichnet werden. Man kann bei GLBasic zwar auch mit z. B. KEYWAIT dafür sorgen, dass das Programm anhält, doch das hätte dein Problem nicht gelöst. Ist dir auch der entscheidende Vorteil dieser Methode bewusst? ;)
#32
QuoteGuten Morgen,  da ich die Rotation in einer FOR NEXT Schleife habe muss SHOWSCREEN da auch mit rein?, nach jedem PRINT Befehl ein SHOWSCREEN? Also reicht eigentlich ein SHOWSCREEN nicht.
Genau da scheint das Problem zu liegen. Du rufst SHOWSCREEN dann doch an der falschen Stelle auf. Andere Formulierung, um es vielleicht besser zu verdeutlichen, was passiert. Folgender Satz ist absolut entscheidend für das grundlegende Verständnis mit SHOWSCREEN: Du siehst auf dem Bildschirm immer genau das - und nur das - was seit dem letzten Aufruf von SHOWSCREEN bis zum erneuten Aufruf von SHOWSCREEN gezeichnet wurde. Würdest du nach jedem PRINT einen SHOWSCREEN aufrufen, dann würde dir auch immer nur der Text des einen PRINT angezeigt werden. Möchtest du mehrere PRINT's angezeigt bekommen, musst du sie alle nacheinander, ohne SHOWSCREEN dazwischen, aufrufen. Möchtest du zu diesem Text oder mehreren Texten weitere Grafikausgaben, müssen die ebenfalls alle noch aufgerufen werden, bevor das nächste SHOWSCREEN kommt. Ist das verständlicher?
#33
Idealerweise läuft jedes GLBasic Programm in einer großen Hauptschleife ab. SHOWSCREEN muss in dieser Schleife ganz ans Ende bzw. dann auftauchen, nachdem alle Grafiken gezeichnet wurden. Du hast es schon an die richtige Stelle gesetzt, Worebu. Das Verständnisproblem liegt nach meiner Auffassung immer noch darin, bei jedem Frame, also jedem Schleifendurchlauf, stets alles zeichnen zu müssen, was auch angezeigt werden soll. Das war ja damals bei den alten Basicsprachen nicht so - wie z.B. bei QBasic, welches ich intensiv genutzt hatte. Du musst deinen Code so organisieren, dass zu jedem Zeitpunkt alles gezeichnet wird, was sichtbar sein soll. Dies hinzubekommen bedarf wahrscheinlich weiterer Hilfestellung. Arrays sind da der richtige Weg, wie schon erwähnt wurde.
#34
Quote from: backsliderDie Aussage ist immer wahr, eventuell wurde meine Aussage missverstanden.
Wenn du ein Objekt vom Typen Auto hast mit der Eigenschaft PS, dann ist diese niemals, egal wie man interpretiert, GLOBAL.
Sie ist über das Objekt vom Typen Auto aufrufbar, ja. Aber eine globale Variable ist was anderes.
Alles klar. Es war, wie ich vermutet habe, eine reine Verständnissache. Richtig verstanden, ist die Aussage demnach immer wahr. Für mich ist eine globale Variable eine Variable, deren Wert von jeder Stelle im Programm aus gelesen werden kann. In deinem nicht ausführbaren Codebeispiel ist noch gar nicht festgelegt, ob die Typinstanzen global oder lokal sind.
#35
Entschuldigung, dass ich mich hier auch nochmal einmischen muss. Jedoch gibt es hier durchaus Unstimmigkeiten, die auch ich als Neuling oder jemand, der noch Verständnisprobleme hat, so nicht akzeptieren könnte.

Quote from: backsliderSo brauchst du nämlich NICHT GLOBALE Variablen erstellen, sondern einfach fünf Autos, welche alle die individuelle Eigenschaft PS haben.
Diese Aussage ist schon ein wenig irreführend und nur wahr, wenn man sie entsprechend interpretiert. Ich habe den Code selbst ausprobiert und weiß, warum er sich nicht compilieren lässt. Es ist jedoch nicht mal nur 1 grundsätzlicher Fehler drin, so viel schon vorweg.

Die Möglichkeit, eine Funktion innerhalb eines Types zu platzieren habe ich selbst noch nie genutzt. Tatsächlich färbt GLBasic das nicht offizielle Schlüsselwort "self" ein und zeigt in der Statusleiste "self.aufruf(self.x,self.y)...". Für jemand, der eine Basic-Sprache neu lernt, ist das nicht nachvollziehbar.
Zumal Fakt ist, dass die integrierte Hilfe keinen Hinweis auf diese Funktionalität enthält! Jede gegenteilige Aussage ist nicht fair.

So, wie auch ich mittlerweile mitbekommen habe, bietet GLBasic ansatzweise Funkionalitäten der objektorientierten Programmierung, obwohl das in einer klassisch strukturierten Basic-Sprache weder zu erwarten ist, noch solche Grundkenntnisse vorausgesetzt werden können.

Ich selbst bin zwar zufrieden mit GLBasic, weil ich die Dinge, die ich damit machen will, meistens früher oder später hinkriege (wenn auch oft nur mit viel Geduld, Probiererei und Befragung des Forums) - allerdings gibt es durchaus erwähnenswerte Mankos. Für Neueinsteiger, die mit der Erwartung herkommen, sich GLBasic aneignen zu können, ohne erst das halbe Forum durchwühlen und Informationen zusammenzusuchen zu müssen, die die Dokumentation nicht, nur indirekt oder unzureichend erklärt, ist das durchaus unerfreulich und frustrierend.
#36
Also das mit dem self habe ich aber auch zum ersten Mal gehört, muss ich zugestehen!
#37
Luckily, all problems are gone. The app currently runs perfectly fine, even if there's a lot to do before it's finished. Programming is always a great learning experience for me.
#38
Schau dir mal bitte die beiden Befehle ALPHAMODE sowie ALPHATESTING an und alles wird gut :)
#39
Quote from: TheMapChapIt looks like the standard Music player cant find/player WAV, though doing it through Find is no problem...  I presume WAV's aren't treated as songs :)
Then I'll consider to try lossless WMA!
#40
QuoteYes, WAV works.

Have you installed the Files app ?  You may need to use that rather than Music to find (and play) WAV files as they may not show in Music
Oh, good. I understand not quite right... you mean, I need a kind of file manager to browse that music files directly and then select it to play? Hm, this is a solution but I as a user would expect that the music app is able to find it automatically. At least it should be possible to add these files once and have them in a playlist.
#41
I've a special question to the operation of the standard music player in Windows Phone 8.1! My father would like to use it but we weren't able to get the saved files appear. I read it's possible to playback .wav files and as a classical music fan my father needs perfect audio quality. Can anyone confirm that .wav files are supported in WP 8.1? The way to copy the music files to the SD card in the music folder is right? The instruction file from microsoft says that but why weren't any files in the music app?
#42
This could be exactly my own words! I fully agree. Thank you! WP support for GLBasic is nonsense and I'm sure we don't have to fear, Gernot will break his leg thereon.
#43
Ich kann gerade nicht glauben, dass das, was hier passiert, real ist... aber gut... :blink:
#44
I can confirm, Windows Phone is really nice to use. My father bought a Lumia phone a couple of weeks before. I recommended it. He never used smartphones before and he's very satisfied with it. As a phone I would prefer that but for Android development I always need an Android device.

WP8 development would be interesting too but because of the tiny market share it makes absolutely no sense.
#45
Wenn du eine weitere Quelldatei öffnest, berücksichtigt die IDE deren Code noch nicht. Erst ein Rechtsklick mit dem Befehl "Datei ins Projekt übernehmen" wird das ändern. Der direktere Weg wäre, Quelldateien gleich über das Jumps Fenster (standardmäßig auf der rechten Seite der IDE) über den Reiter Dateien hinzuzufügen, dann sind sie sofort im Projekt und werden beim Compilieren berücksichtigt. Zu beachten gilt, dass eine Quelldatei das Hauptprogramm darstellt, den Einsprungspunkt. Die weiteren Quelldateien können dann Subs und Funktionen enthalten, auf die das Hauptprogramm zurückgreift. Die IDE erlaubt es dir, jederzeit zu wählen, welche der Quelldateien das Hauptprogramm sein soll. Ich hoffe, jetzt kommst du damit klar. Es wäre zu schade, diese Programmiersprache aufgrund dieser Besonderheit links liegen zu lassen :)