Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jul 05, 2025 08:23

Foren-Übersicht » Programmierung » Allgemein
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 30 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Autor Nachricht
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 15:45 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Ack,
wenn ich das ändern weglasse, komme ich zur Fehlermeldung vom Anfang...
hier mal mein Code:
Code:
  1. type
  2.  
  3.   PForm = ^TForm;


Code:
  1. function glWindowCreate(CanvasHandle: HDC; Width, Height, Depth: Integer; Fullscreen: Boolean; OGLForm: PForm) : Boolean;
  2.  
  3. var
  4.  
  5.   OGLDisplay: TDeviceMode;
  6.  
  7. begin
  8.  
  9.  if Fullscreen then
  10.  
  11.  begin
  12.  
  13.   ZeroMemory(@OGLDisplay, SizeOf(OGLDisplay));
  14.  
  15.   with OGLDisplay do
  16.  
  17.   begin
  18.  
  19.    dmSize := SizeOf(OGLDisplay);
  20.  
  21.    dmBitsPerPel := Depth;
  22.  
  23.    dmPelsWidth := Width;
  24.  
  25.    dmPelsHeight := Height;
  26.  
  27.    dmFields := dmBitsPerPel or dmPelsWidth or dmPelsHeight;
  28.  
  29.   end;
  30.  
  31.   EnumDisplaySettings(nil, 0, OGLDisplay);
  32.  
  33.   ChangeDisplaySettings(OGLDisplay, CDS_FULLSCREEN);
  34.  
  35.  end;
  36.  
  37. // OGLForm^.ClientWidth := Width;
  38.  
  39. // OGLForm^.ClientHeight := Height;
  40.  
  41.  DrawHandle := CanvasHandle;
  42.  
  43.  Randomize;
  44.  
  45.  IsOGLInit := False;
  46.  
  47.  Result := InitOpenGL;
  48.  
  49. end;


Code:
  1. function glWindowShow(Depth: Integer) : Boolean;
  2.  
  3. begin
  4.  
  5.  OGLRC := 0;
  6.  
  7.  glSetPixelFormat(Depth);
  8.  
  9.  glStartGL;
  10.  
  11.  ClearExtensions;
  12.  
  13.  ReadExtensions;
  14.  
  15.  glSetupGL;
  16.  
  17.  IsOGLInit := True;
  18.  
  19.  Result := True;
  20.  
  21. end;


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 16:37 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Wenn ich es wieder nach Show verlege und Show erst beim Click auf einen Button aufrufe, schließt er, beim clicken auf den button die anwendung...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 16:48 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Das nützt alles nix...lad mal dein komplettes Programm hoch.Dann werd ich mir das Ganze mal genauer ansehen.
Dann ist der Fehler leichter zu finden, als wenn hier nur irgendwelche Codeschnippsel gepostet werden.

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 16:52 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
<a href='http://encorex.no-ip.com/hosted_sites/bluetoby/full.zip' target='_blank'>Bitte schön</a>


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:08 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Hmppffffffffff :evil: :evil: :evil: :evil:

Ich muss mich grade stark selbst beherrschen...

Vor Kurzem hatten wir hier doch erst einen Thread, in dem jemand Probs hatte, weil er als Handle für seinen Rendercontext das Handle des Canvas der Form nahm...daraufhin hab ich ihm gesagt, das man das Handle des Canvas einer Form nicht als Handle nutzen darf um seinen Rendercontext zu erstellen !!!!

Und genau das machst du jetzt in deinem Programm falsch!

Code:
  1.  
  2.  
  3. procedure TForm1.FormCreate(Sender: TObject);
  4.  
  5. begin
  6.  
  7. glSetClipping(1024,1);
  8.  
  9. if not glWindowCreate(Canvas.Handle) then
  10.  
  11.  &nbsp;Halt(100);
  12.  
  13. end;
  14.  
  15.  


Das muss aber so aussehen

Code:
  1.  
  2.  
  3. procedure TForm1.FormCreate(Sender: TObject);
  4.  
  5. begin
  6.  
  7. glSetClipping(1024,1);
  8.  
  9. if not glWindowCreate(Handle) then
  10.  
  11.  &nbsp;Halt(100);
  12.  
  13. end;
  14.  
  15.  


Das hättest du aber durch ein wenig rumprobieren (oder hier im Forum rumlesen) selbst herausfinden können...nennt sich "Trial und Error" und ist besser als bei jedem Problem jemand anderes zu fragen...dadurch geht nämlich der Lerneffekt verloren...

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:14 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Sorry... sorry... wusste ja nicht das es am Handle liegt. War in dem Template auch so und dann hab ichs so gelassen. Den Thread muss ich wirklich übersehen haben, welcher war das denn?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:22 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
ähm... außerdem bekomm ich immernoch eine EInvalidOperation 'Cannot change Visible into OnShow or OnHide'


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:31 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Hier iss der Thread indem ich das mit dem Handle erwähnt hab :
<a href='http://dgl.quellcodes.de/forum/viewtopic.php?t=505&highlight=' target='_blank'>http://dgl.quellcodes.de/forum/viewtopic.p...=505&highlight=</a>

Und hier ein Screenshot von deinem Program...läuft bei mir also tadellos :
Bild

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:40 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
beim Click auf den Button geht das progg sofort zu und beim laden in onshow und oncreate mit dem fehler...

PS: Wie hast du denn das Design der Fensterleiste verändert? Hab schon viel probiert aber bin immer noch auf der suche.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:43 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Zitat:
beim Click auf den Button geht das progg sofort zu und beim laden in onshow und oncreate mit dem fehler...

Tja...wie du oben auf dem Screenshot sehen kannst, läuft es bei mir ohne Probs.

Zitat:
PS: Wie hast du denn das Design der Fensterleiste verändert? Hab schon viel probiert aber bin immer noch auf der suche.

Das hat nix mit Delphi zu tun, sondern ist ein neues WindowsXP Theme (WindowsXP ist ja bekanntlich skinnbar).Um die neuen Skins jedoch zu nutzen, benötigt man StyleXP. Das gibts hier : <a href='http://www.tgtsoft.com/' target='_blank'>http://www.tgtsoft.com/</a>

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 17:53 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Meinte auch, dass ohne Delphi... mit Delphi wär's kein problem...
Vielen Dank für den Link!

Werd mal 'n Restart versuchen, vielleicht klappts dann auch bei mir.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 19:23 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Der Restart bringt nix, ich erhalte immernoch den gleichen Fehler...


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 19:32 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 23, 2002 19:27
Beiträge: 5812
Programmiersprache: C++
Hmm...es könnte sein, das ich vorher noch ein paar kleine Änderungen an den Dateien gemacht hab.Zieh dir deshalb mal hier die Units die ich verändert hab.Danach muß es gehen, denn bei mir läufts ohne Probleme!

<a href='http://www.delphigl.de/misc/units_toby.zip' target='_blank'>http://www.delphigl.de/misc/units_toby.zip</a>

_________________
www.SaschaWillems.de | GitHub | Twitter | GPU Datenbanken (Vulkan, GL, GLES)


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 19:35 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Danke, jetzt gehts... werd mal nach den Unterschieden suchen *sg*


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Mi Jan 01, 2003 19:43 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Sep 02, 2002 15:41
Beiträge: 867
Wohnort: nahe Stuttgart
Die Unterschiede hab ich zwar noch nicht entdecken können (werd mir gleich mal ein kleines Tool basteln),
aber in fullscreen wills bei mir mit der variante auch nich wechseln... ohne das das Bild viel zu klein wird... :(


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 30 Beiträge ]  Gehe zu Seite Vorherige  1, 2
Foren-Übersicht » Programmierung » Allgemein


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 Gäste


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.009s | 15 Queries | GZIP : On ]