Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo!

Ich möchte ein Bitmap mit SetBitmap ausgeben weiss aber nicht, wie ich auf mein CImageList-Objekt per index zugreiffen kann.

Aufruf:

m_Ausgabe.SetBitmap(m_Liste);

Fehlermeldung:

'SetBitmap' : Konvertierung des Parameters 1 von 'struct _IMAGELIST' in 'struct HBITMAP__ *' nicht moeglich!

Es ist mir klar, dass ein HBITMAP - Objekt erwartet wird, jedoch kommt IMAGELIST (struct) zurück.

Wie soll ich ich das anstellen, damit der Aufruf hinhaut?

Kann es sein, dass dir nicht ganz klar ist, wozu CImageList gut ist?

So wie ich das aus deinen heutigen Beiträgen erkennen kann, brauchst du nur ein Array zur Aufbewahrung deiner Bitmaps. Diesen Zweck kann und soll CImageList nicht erfüllen. CImageList wird zum Speichern von Bitmaps gleicher Größe für die Verwendung z.B. in ListControls und TreeControls verwendet. Es ist kein einfacher Container für Bitmaps.

Wie wär's denn mit einem CArray<CBitmap>?

Das weis ich auch, dass nur gleich grosse bilder rein dürfen, ist vielleicht falsch rüber gekommen.

Stimmt, wäre besser mit nem Array, da es sich aber um eine Projektarbeit über die Klasse CImageList handelt muss ich die Klasse auch ein bisschen vorfüren (Bilder rein / raus + anzeigen, löschen, erstellen, ...).

Ich weis jetzt, dass ich zur Ausgabe die Methode Draw() hernehmen muss. In den Parametern kann ich dann festlegen, welchen index ich via DC ausgeben möchte...

Nochmal zu CBitmap:

Wenn ich ein Bild aus einer Datei laden möchte (Pfad kommt aus CFileDialog-Objekt), muss ich doch erst ein HBITMAP - objekt erstellen, welches ich dann später in ein CBitmap-Objekt initialisiere, oder? Wie heisst gleich nocheinmal diese Methode?

Originally posted by peicher

Wenn ich ein Bild aus einer Datei laden möchte (Pfad kommt aus CFileDialog-Objekt), muss ich doch erst ein HBITMAP - objekt erstellen, welches ich dann später in ein CBitmap-Objekt initialisiere, oder? Wie heisst gleich nocheinmal diese Methode?

Das hatte ich doch hier schon gesagt:

Zuerst ::LoadImage, dann CBitmap::CreateBitmapIndirect.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.