Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

Deckard2019

Frischling

  • »Deckard2019« ist der Autor dieses Themas

Beiträge: 3

Wohnort: Eisenach

  • Private Nachricht senden

1

14.01.2004, 18:25

Konfigurationsdialog

Hallo,
da ich im Forum nichts derartiges gefunden habe, wollte ich mal fragen ob es irgendwie eine Funktion gibt, mit der ich eine gespeicherte Konfiguration direkt im Programm laden kann, ohne jedesmal den Dialog zu benutzen. Der ist zwar echt gut und nützlich für das finale Programm, aber beim programmieren einfach nur lästig, schließlich benutze ich ja im Endeffekt immer dieselbe. Also nochmal im Klartext, ich will meine tbConfig-Struktur nicht mit dem tbDoConfigDialog füllen, sondern mit einer anderen (Lade-)Funktion. Gibt es da was Neues, wenn nicht wäre es nützlich sowas in die nächste Version einzubauen.

Ansonsten viel Spaß,
Deckard2019

2

14.01.2004, 18:56

Eine einzelne gibt es glaub ich nicht. Aber indirekt schon. Schau dir doch mal die Window-Message an, die ausgeloest wird wenn man eine Konfiguration laden will. Das kannst du dann einfach in eine Funktion umsetzen.
Wichtig! Ich übernehme keinerlei Verantwortung für eventl. Datenverlust oder Schäden am Rechner ;D

3

14.01.2004, 19:02

Also da musst du dann wohl selber ran. Mach dir doch einfach eine eigene Struktur und einen eigenen Dialog. Dann brauchst du nur noch eine Funktion, die deine gefüllte Struktur (evtl. aus einem File) ausliest.
Alternativ kannst du dir natürliche auch eine eigene Funktion schreiben, die die tbStruktur ausfüllt. Da musst du dann aber entweder nur Standardwerte benutzen (also nix mehr mit auswahl von Auflösung und so in nem Dialog), oder dir einen eigenen Dialog machen. Statt einem eigenem Dialog könntest du deine Einstellungen auch manuell oder per Funktion in ein .ini file schreiben, und mit einer anderen Funktion wieder einlesen.

Ich jedenfalls würde mir einen eigenen Dialog machen.
Ich hab das als absoluter Anfänger auch gemacht, und an einem Wochenende hatte ich schon nen schönen Simplen, mit weniger Optionen (brauchst ja fuer den Anfang nur Auflösung, Color-Depth, evtl. Z-Buffer und MultiSampling; Mittlerweile hab ich schon meinen 4ten Dialog, und sie werden jedesmal besser.

Du musst dir nur ein gscheites Tutorial über Win32 Programmierung suchen, und die DirectX-Funktionen zum erstellen einen Graphiksdevice kennen, aber die sind ja in David's Buch sehr gut erklärt.

just in case: http://www.winprog.org/tutorial/

edit: rächtschaibunk!

Deckard2019

Frischling

  • »Deckard2019« ist der Autor dieses Themas

Beiträge: 3

Wohnort: Eisenach

  • Private Nachricht senden

4

14.01.2004, 19:57

Thanks

Ok, danke erstmal für die schnellen Antworten. Ich hab mir den Ladevorgang in der tbconfig.cpp mal angeschaut und auch sofort die Lösung gehabt(danke noch mal an Dragonmaster). Die tbConfig Struktur wird simplerweise ohne zusätzliche Informationen in der *.tbc Datei abgespeichert, was den benötigten Code zum Laden echt kurz werden läßt. Hier die Lösung(ohne Fehlerbehandlung) für alle Faulen:

FILE* pFile = fopen("standard].tbc", "r");
fread(&g_Config, sizeof(tbConfig), 1, pFile);
fclose(pFile);

Wunderbar, muß ich mich nicht mehr mit dem Dialog rumschlagen.

@Pirat!: Gab dann doch eine einfachere Lösung ;) , früher oder später kommt man klar nicht um einen eigenen Dialog herum, bringt einem ja auch einiges in Sachen Verständnis DirectX.

NoName

Treue Seele

Beiträge: 118

Beruf: Student

  • Private Nachricht senden

5

14.01.2004, 21:50

Ich würde "fopen("standard].tbc", "r");" durch "fopen("standard].tbc", "rb");" ersetzen.

DarthB

Treue Seele

Beiträge: 265

Beruf: Schüler

  • Private Nachricht senden

6

16.01.2004, 22:40

Jo ein eigene Dialog ist schon was feines!
Ich habe vor kurzen einen eigenen programmiert! Bei der Entwicklung ist mir noch ne besondere Feature Idee gekommen die ihr vieleicht auch einbaun solltet falls ihr einen eigenen codet:

Falls DirectX9 bei einem User nicht vorhanden ist startet er, nach Abfrage des User (Ja/Nein), eine Datei namens dxwebsetup.exe die man sich bei MS downen kann.

Ciao DarthB :huhu:

7

17.01.2004, 08:57

öhm...meine programme starten nicht auf rechnern, wo dx9 nicht installiert ist...von wegen "d3d9.dll nicht gefunden".

cya, neonew
stay tight, project universe comes back!
### project earth <> 2004 ###

NoName

Treue Seele

Beiträge: 118

Beruf: Student

  • Private Nachricht senden

8

17.01.2004, 19:58

Du kannst DX während deines Programmes mittels LoadLibrary dynamisch laden. Damit wäre so ein Dialog möglich. :)

Werbeanzeige