AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Controls in Unit eingebunden - funktioniert aber nicht!
Thema durchsuchen
Ansicht
Themen-Optionen

Controls in Unit eingebunden - funktioniert aber nicht!

Ein Thema von Chefx · begonnen am 8. Dez 2009 · letzter Beitrag vom 8. Dez 2009
Antwort Antwort
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#1

Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 20:23
Hey DBs,

warum sind die undefiniert wenn ich doch die Controls Unit eingebunden habe?
Hier der Quellcode:
Delphi-Quellcode:
unit Unit1;

interface

uses Windows,controls, dglOpenGL;

type tgl = class
  procedure glinit();
  procedure gl_ini(var DC:HDC; var RC:HGLRC);
  procedure gl_handleResize ();
end;

implementation

procedure tgl.glinit();
begin
  glEnable(GL_TEXTURE_2D);
  glEnable(GL_CULL_FACE);
  glCullface(GL_back);
  glEnable(gl_DEPTH_TEST);
end;

procedure tgl.gl_ini(var DC:HDC; var RC:HGLRC);
begin
  InitOpenGL;
  DC := GetDC(Handle); // Undefinierter Bezeichner: 'Handle'
  RC := CreateRenderingContext(DC, [opDoubleBuffered], 32, 24, 0, 0, 0, 0);
  ActivateRenderingContext(DC, RC);
  GLInit;
end;

procedure tgl.gl_handleResize ();
begin
    if HandleAllocated then // Undefinierter Bezeichner: 'HandleAllocated'
   begin
    glViewport(0, 0, ClientWidth, ClientHeight);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity;
    gluPerspective(45, ClientWidth/ClientHeight, 0.1, 1000);
   end;
end;

end.
müsste doch funktionieren, weil ich das mit der Windows Unit für HDC auch gemacht haben oder nicht?

Danke im voraus

MfG
Chefx
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#2

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 20:31
DC := GetDC(Handle); Das ist gleichbedeutend mitDC := GetDC(self.Handle); . Undtype tgl = class ist gleichbedeutend mittype tgl = class(TObject) Besitzt TObject ein Handle bzw. die Methode HandleAllocated? Damit dürfte die Frage beantwortet sein.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#3

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 20:35
Weil das Properties von TWinControl sind und dein tgl nur von TObject abgeleitet ist ... wo sollen diese also herkommen?
(weitere Units einzubinden hilft da auch nix)

[edit]
och menno
$2B or not $2B
  Mit Zitat antworten Zitat
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 20:40
aber von welchen Typ soll ich das ambesten ableiten?
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#5

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 20:47
na mindestens von TWinControl ?

wobei sich TPanel oder TPaintBox vermutlich gut eignen könnten
$2B or not $2B
  Mit Zitat antworten Zitat
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 21:08
wenn ich es mit TForm:
Delphi-Quellcode:
uses Windows,Forms,Controls,dglOpenGL;

...

type tgl = class(TForm)
  procedure glinit();
  procedure gl_ini(var DC:HDC; var RC:HGLRC);
  procedure gl_handleResize ();
end;

...
und der aufruf
Delphi-Quellcode:
...

var
  gli:Tgl;

...

  gli:=Tgl.Create(self);
  gli.gl_ini(DC,RC);
Ressource tgl nicht gefunden
aber was ist falsch?
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.625 Beiträge
 
Delphi 12 Athens
 
#7

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 21:22
Wieso denn TForm? Willst Du gleich noch eine *.dfm schreiben? Nimm einmal TPanel, wie himitsu vorgeschlagen hat.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Chefx

Registriert seit: 13. Jun 2009
Ort: Radebeul
241 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Controls in Unit eingebunden - funktioniert aber nicht!

  Alt 8. Dez 2009, 21:31
Ok vielen dank für eure anworten
funktioniert alles
ein Sprichwort für Programmierer:
"Viele wege fürn zur EXE, aber ob sie funktioniert ist die andere Frage."
schau mal bei www.xlite.de.tc vorbei
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz