myPicture1 = LoadBitmap_(LoadLibrary_("DLL.dll"),"PUREBASIC")
If OpenWindow(0,0,0,400,100,#PB_Window_SystemMenu|#PB_Window_ScreenCentered,"Bild in DLL Test")
If CreateGadgetList(WindowID(0))
ImageGadget(1,0,0,300,100,myPicture1)
EndIf
Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
EndIf
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
Handle:
Immer wenn ein GUI Objekt erstellt wird (Fenster, Gadget oder so) bekommt es als Adresse, eine noch nicht Existierende einmalige (Laufende) Nummer verpasst.
Ein Handle ist also "nur" eine Objektnummer, die vom Betriebsystem zum ansprechen des Objektes da ist.
Handle = Griff (zum anfassen des Objektes)
(Bei manchen Objekten ist das Handle auch gleichzeitig die Anfangsspeicheradresse des Objektes, da diese Adresse ja auch einmalig ist.)
Speicheradresse:
GUI Objekte und ihr Speicherplatz, werden vom Betriebsystem verwaltet.
Die Speicheradresse eines GUI-Objektes ist für den Programmierer (meist) uninteressant, da es über das Betriebsystem-Handle zu erreichen ist!
Da es ein Objekt ist, kann man nur die Anfangsspeicheradresse als Zeiger bekommen(Wie weiss ich nicht!). Um das Objekt im Speicher zu manipulieren nimmt man meist Betriebsystemfunktionen oder man muss die Interne-Struktur des Objektes genau kennen.