Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

hmmmmmpf ...

Hallo liebe Gemeinde.

Ich programmiere seit einiger Zeit in C++ mit MFC-Unterstützung, und habe ein Problem.

Beschreibung der Anwendung:

Ein Feld (Matrix) an Werten (zB: Helligkeit oder Temperatur) soll in einer SDI auf dem schönen, weißen Hintergrund gebracht werden. Jeder Wert hat seine Farbe (Graustufen). Es entsteht eine graue 'Mondlandschaft'.

Problem:

Ich will die Punkte nicht einzeln setzen (beim Stretchen sogar als Rechtecke) sondern die CBitmap-Klasse verwenden. Das Problem ist, daß ich weder eine Ressource noch eine Datei habe, sondern ein Datenfeld. Dieses kann ich mit CreateBitmapIndirect in ein Bitmap wandeln - oder? :rolleyes:

Mein Ergebnis:

Er zeigt nichts an. Alles weiß.

Wenn ich eine Ressource angebe, zeigt er was.

Also: Meine Zuweisungen an den DeviceContext ist richtig ... es muß bei der Erstellung des Bitmaps liegen.

Frage:

Habt ihr sachdienliche Hinweise?

Ich habe schon x Seiten durchlesen - kennt ihr eine (x+1)te Seite?

Hilfe .... :eek:

Geschrieben

Jo ...

also: (danke erstmal ... )

Ich habe meinen Fahler gefunden, was ihr nicht konntet, weil ihr meinen Code nicht hattet.

Ich gebe ihm bei CreateBitmap explizit nochmal die BitFarbTiefe (pro Pixel) mit, und anstatt daß der dann damit arbeitet, erstellt er das Bild trotzdem nur, wenn diese Zahl mit der aktuellen Device-Farbtiefe UND dem Datentyp des Bild-Daten-Arrays überein stimmt. Da frage ich mich natürlich, wozu ich ihm das überhaupt übergeben muß, aber das klappt nun.:P

Bei CreateCompatibleBitmap {BOOL CreateCompatibleBitmap( CDC* pDC, int nWidth, int nHeight);} habe ich wohl verpaßt, wo ich da den Verweis auf die Bitmapdaten lege, deshalb habe ich da nicht weiter gesucht, werde dies aber sofort wiederholen.

Noch etwas:

Kennt sich jemand mit CDC::SetColorAdjustment {BOOL SetColorAdjustment( const COLORADJUSTMENT* lpColorAdjust);} aus? ...

Ich weiß, daß das nur mit WinNT richtig geht, aber das das nur mit 16-Bit-Farben läuft, steht nirgens. Bei mir verhält es sich aber so ... sowohl die Microsoft-Demo (Halftone.exe) als auch mein Programm. Kann es sein, daß bei 32Bit kein Halftone zieht? ... wäre ja schrecklich ...

schöne Grüße ... Volker

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...