Region aus Resource laden und sichtbar machen
-
Original erstellt von Wiskas:
**```cpp
LoadRegion(NULL, HRGN& region, LR_FROMRESOURCE, MAKEINTRESOURCE(region));Sag doch gleich, dass du keine Ahnung von C/C++ hast. Es muss so sein:
HRGN hRgn; LoadRegion(hInstance, hRgn, LR_FROMRESOURCE, MAKEINTRESOURCE(ID_BIN_RGN));
Und nochmal für dich:
1. Parameter: Die Instanz deines Programmes 2. Parameter: Ein Region-Handle, das du vorher definiert hast (s.o.) 3. Parameter: klar: 4. Parameter: MAKEINTRESOURCE von der ID, die du im Resource-Script für die binären Region-Daten angegeben hast.
Nach diesem Aufruf ist die Region aus der Resource in dem Region-Handle, das du als 2. Parameter angegeben hast, gespeichert.
Anm.: Im BCB steht die Instanz des Programmes übrigens in der globalen Variablen HInstance.
[ Dieser Beitrag wurde am 14.01.2003 um 17:37 Uhr von WebFritzi editiert. ]
-
danke
der code funktioniert jetzt. nur wird die region noch nicht korrekt angezeigt. die teile die transparent sein sollten sind immer noch zu sehen.
-
Hmm, im RegionBuilder war's aber nicht so, oder? Ich muss mir das sonst nochmal anschauen. Benutzt du auch SetWindowRgn()?
-
jup mach ich.
-
Ich will auch die erste Frage beantwortet haben.
-
beim regionsbuilder hat es funktioniert.
-
beim regionsbuilder hat es funktioniert.
-
Schick mir mal dein Bild. Ich will das selber mal ausprobieren.
-
Schick mir mal dein Bild. Ich will das selber mal ausprobieren.
-
*lol*
-
Wiskas? Bist du noch da?
-
hab dir das bild mal als mail geschickt.
-
Jo, danke. Sieht gut aus. Bei mir ging's übrigens nicht im RegionBuilder. Da gab's noch einen Bug. Hab ich jetzt gefixed und die neue Version upgeloaded. Jetzt werd ich mal sehen, ob das mit dem LoadRegion klappt.
-
Also, bei mir geht's jetzt wunderbar.
-
tja wer weiß, warum das bei mir nicht geht.
-
Musses aber. Mach dir mal ein neues Projekt und pack ein Image auf die Form, in dem ganz links oben der Wecker angezeigt wird. Dann schreibe in FormCreate:
HRGN hrgn; LoadRegion(HInstance, hrgn, LR_FROMFILE, TEXT("Wecker.RGN")); SetWindowRgn(Handle, hrgn, TRUE);
Wecker.rgn muss in deinem Projekt-Verzeichnis liegen.
P.S.: Hast du dir die neue Version gezogen?
-
mit dem code funktioniert es. nur halt aus der resource laden nicht, aber wer weiß woran das nun wieder hängt.
danke erstmal für die hilfe
p.s. die neue verrsion hab ich runtergeladen. hab aber keine änderungen erkennen können, außer der dateigröße
-
Du hast sicher die Resource nicht richtig eingebunden.
-
doch hab ich, weil die anderen resourcen ja funktionieren.
-
So, na gut. Dann zeig mal den Code deiner Resource-Dateien (.rc und .rh) und den Code, womit du die Region lädst und dem Fenster zuordnest.