Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Soll ich dieses Projekt weiterführen und veröffentlichen? |
Nicht schon wieder eine GUI... |
|
4% |
[ 1 ] |
Lass es bleiben |
|
8% |
[ 2 ] |
Ja, mach mal! |
|
75% |
[ 18 ] |
Zeig erstmal mehr Beispiele! |
|
12% |
[ 3 ] |
|
Stimmen insgesamt : 24 |
|
Autor |
Nachricht |
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 30.10.2009, 13:54 Titel: |
|
|
Dem befehl SDL_SetVideoMode kann man das Flag SDL_RESIZABLE mitgeben.. daraufhin kann man das SDL-Fenster in seiner größe verändern.
Davon merkt die Gui aber leider nichts, weil ich bisher noch keine möglichkeit erkannt habe die neue größe des Fensters auszulesen.
Über das SDL-Event " SDL_VIDEORESIZE " bekomme ich zwar mit, dass das Fenster verändert wurde, aber ich weiss nicht wie ich die neue größe auslesen kann...
Wenn ich das raushabe, kann ich den Gui-Buffer erneuern und die neue Fenstergröße wäre angepasst..
Bei der Gelegenheit möchte ich auch noch mal darauf hinweisen, dass ich bei dem SDL-Pendant zum FB-Inkey noch hilfe benötige: http://forum.qbasic.at/viewtopic.php?t=6834
Ich hab irgendwo im internet gelesen das in der 1.3er version von SDL die möglichkeit besteht, mehrere SDL-Fenster zu öffnen.. dann gehts richtig rund |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 30.10.2009, 15:20 Titel: |
|
|
Korrektur: SDL-Fenster sind nun auch mit der Gui resizable
Im prinzip verhält sich das SDL Fenster nun komfortabler als das GFX fenster.. nur gibt es keine wirklich praktikable Inkey-Funktion fürs SDL-Fenster... |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 31.10.2009, 01:49 Titel: |
|
|
Bei mir schaut es nun so aus:
http://img688.imageshack.us/img688/2959/gfxsdl.jpg
Alle Probleme SDL betreffend habe ich weitgehend ausgeräumt.
- Maus/Tastatureingaben funktionieren sogut wie perfekt
- SDL-Fenster kann man zur laufzeit vergrößern/verkleinern
- Sogut wie keine Performance verluste.
(Wenn man NUR das SDL-Fenster aufruft, hat man sogar einen deutlichen Performance-vorteil gegenüber der reinen FBGFX-Lösung!!)
Mir mangelt es noch an guten Beispielen/Tutorials... ich würde ungerne Code veröffentlichen, ohne das ich gutes, funktionierendes Anschauungsmaterial vorzeigen kann... Wer also Ideen hat, immer her damit |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 31.10.2009, 13:19 Titel: |
|
|
Setz mal mein Muhbbles in die GUI, ich würde das genial finden... der code müsste im nopaste rumfliegen... *g*
oder du pappst einfach mal alle kontroll-elemente in nen fenster und lässt die i-was beeinflussen... kp _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 31.10.2009, 21:23 Titel: |
|
|
Unter Linux klappts übrigens auch einwandfrei:
http://img141.imageshack.us/img141/2695/bildschirmfotob.jpg
Dieses kleine Programm konnte ich unter Windows und Linux kompilieren und Ausführen ohne auch nur eine zeile zu ändern
@The_Muh: Ich werd mir dein Muhbbles mal angucken! hoffe ich find das ... diese Gui ist fast so einfach, wie eine inkey-Abfrage
Viele Programmierer die sich mit der steuerung ihrer Programme nicht mühe geben machen es ja oft so, das sie per INKEY einfach auf Tasten warten und dann eine funktion aufrufen.. Das klappt unter diese GUI ganz genauso. Aber das schöne ist, man KANN es so machen, muss es aber nicht. |
|
Nach oben |
|
|
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 01.11.2009, 00:32 Titel: |
|
|
Das sieht doch schonmal sehr gut aus! .) |
|
Nach oben |
|
|
funkeld gesperrt
Anmeldungsdatum: 10.10.2009 Beiträge: 179
|
Verfasst am: 04.11.2009, 09:30 Titel: |
|
|
Wo finde dein Pogramme mit dem SDL ausführungen?
Ist glaube ich eine bessere Lösung.
Dein anderes Programm läuft mit 100%Cpu, ist ein bisschen viel.
Gruss |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 04.11.2009, 11:37 Titel: |
|
|
Die GuiPtr-Version mit SDL support ist noch nicht veröffentlicht, sollte aber diese woche veröffentlicht werden. ich weiss, ich hinke immer etwas hinter meinen release-versprechungen hinterher. Das liegt aber eher daran, das ich keine guten beispiel-ideen hab. Oder eine idee zu einem kleinen tutorial hab ich auch noch nicht :-/
Was meinst du mit "anderes Programm" ?
Meinst du http://forum.qbasic.at/viewtopic.php?t=6841 ?
Bau da einfach in die schleife ein sleep 1,1 ein und schon hast du weniger last... Das ist aber auch eher als Demo-Projekt zu sehen. Es soll zeigen wie man ein 2. GFX-Fenster mittels SDL erzeugt. |
|
Nach oben |
|
|
The_Muh aka Mark Aroni
Anmeldungsdatum: 11.09.2006 Beiträge: 718
|
Verfasst am: 16.11.2009, 16:02 Titel: |
|
|
ich warte auf dein Release... ich hab was vor _________________ // nicht mehr aktiv // |
|
Nach oben |
|
|
croco97
Anmeldungsdatum: 04.11.2005 Beiträge: 260
|
Verfasst am: 16.11.2009, 16:26 Titel: |
|
|
OneCypher hat Folgendes geschrieben: | Das liegt aber eher daran, das ich keine guten beispiel-ideen hab. Oder eine idee zu einem kleinen tutorial hab ich auch noch nicht :-/ |
Was man immer brauchen kann:
Ein kleines Installationsprogramm (template) für eigene Programme.
Da drin sollte dann auch eine File-Selector-Widget enthalten sein.
Ein kleines "ComputerArt"-Programm (Lissajous-Figuren, Apfelmännchen, etc.), bei dem man die Parameter mit Schiebereglern verstellen kann.
Ein Moorhuhn-Einfach-Klon, bei dem du im einen Fenster die Flinte und das Huhn zeigst und daneben die Bedien-Elemente hast.
VG!
Croco |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 21.11.2009, 18:00 Titel: |
|
|
Hallo allerseits,
ich würde gerne meine Projektseite auf dem freebasic-portal aktualisieren.
Aber ich kann obsolete dateien nicht von der projektseite entfernen ( |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 21.11.2009, 18:47 Titel: |
|
|
Die update-funktion ist aber nur nützlich wenn man die datei noch benötigt.. in meinem fall würde ich gerne diese dateien entfernen weil sie wegfallen.. |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 28.11.2009, 12:58 Titel: |
|
|
Ich schreibe grade die komplette GuiPtr-Bibliothek neu...
Irgendwie hat es sich ergeben, das ich beim schreiben der "1.Version" mehr dazugelernt habe, wie etwas funktioniert, dass ichs jetzt komplett neu- und richtig machen will...
Dabei fallen nun einige überflüssige sachen weg und der objektorientierte Systemaufbau wird konsequent durchgesetzt... Dennoch kann man die Gui im eigenen Programm auch zur ablaufgesteuerten-programmierung verwenden.
Wirklich effektiv und übersichtlich wirds allerdings erst, wenn man sein eigenes Programm auch als Objekt schreibt... (Vererbung ist toll )
Insgesamt wird die API leichter zu benutzen und leichter zu lesen sein. Sehr wenigen Zeilen Code genügen nun um die Gui einzubinden... man kann gespannt sein |
|
Nach oben |
|
|
28398
Anmeldungsdatum: 25.04.2008 Beiträge: 1917
|
Verfasst am: 28.11.2009, 13:02 Titel: |
|
|
OneCypher hat Folgendes geschrieben: |
Wirklich effektiv und übersichtlich wirds allerdings erst, wenn man sein eigenes Programm auch als Objekt schreibt... (Vererbung ist toll ) |
Es gibt keine Vererbung in FB.
Oder machst du das per Makros? |
|
Nach oben |
|
|
croco97
Anmeldungsdatum: 04.11.2005 Beiträge: 260
|
Verfasst am: 28.11.2009, 13:31 Titel: |
|
|
Jain. Man kann sich sein eigenes Klassenmodell mit Vererbung durchaus zusammenbasteln. Siehe die GObject-Funktionalität aus Glib, die eine gewisse Vererbung besitzt und die ja auch in FB zur Verfügung steht.
Allerdings: Es sind keine virtuellen Methoden möglich.
VG!
Croco |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 28.11.2009, 14:17 Titel: |
|
|
echte vererbung gibts natürlich nich in fb. aber es gibt durch aus mittel und wege dieses verhalten nachzubilden, solange man sich an ein paar regeln hält. code beispiele werden folgen |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 19.01.2010, 14:59 Titel: Update |
|
|
Hallo liebe FB-Community...
habe nun die Gelegenheit genutzt dieses Projekt mal etwas zu aktualisieren:
http://users.freebasic-portal.de/onecypher/
bzw:
http://users.freebasic-portal.de/onecypher/GuiPtr0.1-19.zip
Dokumentation ist mangelhaft, und da ist ne menge Code drin der für mich zu testzwecken diente. (Aber ich arbeite an allen Fronten!)
Aber alles in allem, funktionierts einigermaßen so wie es soll und die beispiele funktionieren ganz gut. - Einfach mal die GFX_ und SDL_ beispiele ausprobieren.. example0.bas diente mir zu testzwecken und hat nicht sonderlich viel sinn. Trotzdem lohnt sich da evtl auch ein blick rein.
Beispiele die sowohl GFX als auch SDL-Fenster mittels thread ausnutzen folgen. Technisch stellt es bereits jetzt kein problem dar.
Unter linux hab ichs nicht getestet, aber sollte in etwa auch so funktionieren... dem werd ich mich aber demnächst mal etwas genauer widmen...
Bin gespannt auf reaktionen |
|
Nach oben |
|
|
MOD Fleißiger Referenzredakteur
Anmeldungsdatum: 10.09.2007 Beiträge: 1003
|
Verfasst am: 19.01.2010, 15:30 Titel: |
|
|
Wie schon erwähnt, gefällt mir das Ganze sehr gut. Eine Doku wäre aber natürlich schon hilfreich.
Was mir auch noch sehr zusagen würde, wäre ein GUI-Designer, ähnlich dem von Stueber. Der müsste sich doch direkt auf der Basis von GuiPtr erstellen lassen. Ist zwar sicher aufwendig, aber ein Designer-Ansatz zum Erstellen eines Fensters mit einem Button würde schon reichen, um zu zeigen, wie gut die GUI eigentlich ist. |
|
Nach oben |
|
|
OneCypher
Anmeldungsdatum: 23.09.2007 Beiträge: 802
|
Verfasst am: 19.01.2010, 20:11 Titel: |
|
|
Das mit dem designer ist so eine sache.. ich hab mir da viel überlegt und gedanken gemacht..
Gründe die dagegen sprechen:
1. Meine Gui ist recht einfach gehalten und mit den richtigen programmierkniffen kann man da verdammt viel rausholen. - Mehr als man mit einem "einfachen" designer rausholen könnte.
2. Meine Gui hat keine integrierten Bedienelemente. Im prinzip gibt es keine "festen" bedienelemente, alle sind frei programmierbar. - Und ich möchte mich, was die auswahl der bedienelemente angeht, auch nicht festlegen.
3. Müsste jedes Bedienelement eine art beschreibung mitliefern damit es in den designer integrierbar ist. - Der verursacht einen nicht vertretbar höheren aufwand bei der Bedienelement-programmierung.
4. Rudimentäre funktionen zum relativen positionieren von Bedienelementen sind bereits vorhanden und werden weiter ausgebaut.
Und den einzigen vorteil eines einfachen designers wäre es, dass man die positionen und größen von rechtecken auf einem rechteck positionieren und variieren kann.
(Mit "Rechtecke" meine ich damit die "Grundrisse" der Bedienelemente)
Zur Doku: Ich bereite grade ein Word-Dokument zur beschreibung der zur verfügung stehenden funktionen, und eine Powerpoint-Präsentation zur veranschaulichung der arbeitsweise der gui, vor.
Also einerseits sowas wie eine befehlsreferenz, andererseits eine schematische übersicht über den aufbau einer gui, unabhängig von den Bedienelementen. |
|
Nach oben |
|
|
|