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:

GUI

 
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 13.08.2006, 14:34    Titel: GUI Antworten mit Zitat

Hallo,

ich möchte ein kleines Projekt vorstellen an dem ich nebenbei gearbeitet habe. Es ist eine kleine GUI, die mit der Standardgfxlib arbeitet und mehrere Fenster gleichzeitig samt Ereignissen unterstützt. Es ist alles noch auf niedriger Basis gebaut. Es gibt also zur Zeit keine Skins und kein besonderer Schnickschnack. Ursprünglich war es für ein Wirtschaftsspiel (Neo187) und für einen Leveleditor gedacht. Da der Leveleditor in OpenGL laufen muss, habe ich mich umentschieden und nehme diese GUI doch nicht dafür, weil ich zu faul bin die Zeichenfunktionen auf OpenGL zu portieren. grinsen

Elemente die schon implementiert sind:

  • Labels
  • Buttons
  • RadioButtons
  • Checkboxen
  • Listen
  • DropDown
  • Bilder
  • Scrollbars (horizontal/vertikal)


Hier noch zwei Screenshots:

Mehrere Fenster gleichzeitig mit verschiedenen Elementen:


Kleine Spielereien mit Events:


Falls jemand Interesse für diese GUI haben sollte, kann sich bei mir melden. Ich traue mich nicht so recht den Source an die breite Masse herrauszugeben, weil dieser noch etwas chaotisch und somit verbesserungswürdig ist.

Fenster und Elemente kann man eigentlich recht einfach hinzufügen:

Code:

#include "gui.bi"
DIM SHARED AS WINDOW PTR Main
DIM SHARED AS WndElement PTR MyLabel

Surface.Init(@Surface,800,600,32,false)

Main = Surface.AddWindow (@Surface, "Testfenster",, 10, 10, 500, 350)
Surface.CenterWindow (@Surface, Main->ID) ' Fenster mittig ausrichten

MyLabel = Main->AddElement (Main,, Label, 10, 20)
Main->EditLabel(Main, MyLabel->ID, "Die ist ein Beispieltext.")

Do
    Screenlock
    CLS
    Surface.Show(@Surface)
    Surface.Actions(@Surface)
    Screenunlock
Loop Until  Multikey(&h3B) ' F1

Surface.DeleteWindow (@Surface, Main->ID)


Wie man sieht, wird von Pointern massiven Gebrauch gemacht. Wer also keine Pointer scheut, kann es ja mit dieser GUI probieren ! zwinkern
_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
PMedia



Anmeldungsdatum: 14.08.2006
Beiträge: 2847

BeitragVerfasst am: 29.01.2007, 16:17    Titel: Antworten mit Zitat

Auf alle Fälle siehts erstmal schick aus. Warum kompilierst du den Src nicht als Library?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Ferdi



Anmeldungsdatum: 10.03.2007
Beiträge: 284
Wohnort: Berlin

BeitragVerfasst am: 16.03.2007, 17:56    Titel: Antworten mit Zitat

Suuuuuuuuuuuuuuuuuuper!!!!
Da hast du dir ja richtig viel Mühe gemacht!!
Wo kann man das GUI denn runterladen?
Am besten du machst daraus eine Lib und stellst sie ins Internet. lächeln
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Mao



Anmeldungsdatum: 25.09.2005
Beiträge: 4409
Wohnort: /dev/hda1

BeitragVerfasst am: 16.03.2007, 19:03    Titel: Antworten mit Zitat

Man müsste lesen können, dann wär die Welt echt einfach...

Schau dir den Eingangspost an: direkt bei Stormy nachfragen.
_________________
Eine handvoll Glück reicht nie für zwei.
--
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Elvis



Anmeldungsdatum: 01.06.2006
Beiträge: 818
Wohnort: Deutschland, BW

BeitragVerfasst am: 22.03.2007, 17:40    Titel: Antworten mit Zitat

Ich finde das Ganze auch sehr gelungen. lächeln
Und weil es so gut ist, würde ich an deiner Stelle die Buttons noch ein bisschen
verbessern, also solchen "Schnickschnack" wie Glanz o.ä., da es sich bei diesem
Projekt sicher lohnen würde. zwinkern


Grüße, Elvis
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Stormy



Anmeldungsdatum: 10.09.2004
Beiträge: 567
Wohnort: Sachsen - wo die schönen Frauen wachsen ;)

BeitragVerfasst am: 25.03.2007, 12:58    Titel: Antworten mit Zitat

Ich habe die Entwicklung dieser GUI inzwischen eingestellt - zwecks mangelnder Interesse. Wer aber dennoch an dem Source interessiert ist, kann sich diesen hier runterladen. Ihr werdet zum Kompilieren die Version 0.17b benötigen.
_________________
+++ QB-City +++ Die virtuelle Stadt für jeden Freelancer - Join the community!
Projekte: QB-City,MysticWorld (RPG), 2D-OpenGL-Tutorial
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
steff



Anmeldungsdatum: 24.03.2007
Beiträge: 11

BeitragVerfasst am: 25.03.2007, 16:03    Titel: Antworten mit Zitat

Sieht gut aus!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Eternal_pain



Anmeldungsdatum: 08.08.2006
Beiträge: 1783
Wohnort: BW/KA

BeitragVerfasst am: 25.03.2007, 16:22    Titel: Antworten mit Zitat

Ist eigentlich eine Echt super Sache, hatte mir vor einigen Wochen schonmal überlegt so etwas ähnliches zu basteln, allerdings hat mir irghendwie der richtige Ansatz gefehlt... schade das Du das Projekt einstellen willst!
_________________
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen MSN Messenger
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    Das deutsche QBasic- und FreeBASIC-Forum Foren-Übersicht -> Projektvorstellungen 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