Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Menüeinträge mit Bitmaps (https://www.delphipraxis.net/37441-menueeintraege-mit-bitmaps.html)

Luckie 5. Jan 2005 23:01


Menüeinträge mit Bitmaps
 
Ich versuche gerade in meinem nonVBCL Programm Menüeinträge mit Bitmaps zu versehen. Das soll angeblich mit SetMenuItemInfo gehen. nur bekomme ich immer einen seltsamen LastError, mit dem ich nichts anfangen kann:
Zitat:

Das System konnte die eingegebene Umgebungsoption
Mein Code sieht bisher so aus:
Delphi-Quellcode:
        // Menu Bitmaps
        FillChar(mii, sizeof(mii), #0);
        hBmp := LoadImage(HInstance, MAKEINTRESOURCE(4001), IMAGE_BITMAP, 16, 16,
          LR_DEFAULTCOLOR);
        hMenu := LoadMenu(HInstance, MAKEINTRESOURCE(5000));
        hMenu := GetSubMenu(hMenu, 0);
        mii.cbSize := sizeof(mii);
        mii.fMask := MIIM_BITMAP;
        mii.fType := MFT_BITMAP;
        mii.fState := MFS_DEFAULT;
        mii.hbmpItem := hBmp;
        SetMenuItemInfo(hMenu, 5001, False, mii);
        Messagebox(hDlg, PChar(SysErrorMessage(GetLastError)), '', 0);
Die Handles sind alle gültig. 4001 ist die Ressourcen ID für das Bitmap, 5000 für das Menü und 5001 für das Menüitem. Ich meine, ich hätte alles richtig gemacht. Aber es will einfach nicht so recht.

Sprint 5. Jan 2005 23:04

Re: Menüeinträge mit Bitmaps
 
Ich glaube das Bitmap was man da setzen kann, ist das aussehen von dem Haken und dem runden Knopf.

Luckie 5. Jan 2005 23:07

Re: Menüeinträge mit Bitmaps
 
Im PSDK steht:
Zitat:

Handle to the bitmap to be displayed
Das was du meinst sind wohl die Felder hbmpChecked und hbmpUnchecked.

Sprint 5. Jan 2005 23:12

Re: Menüeinträge mit Bitmaps
 
Ist schon lange her, als ich das ausprobiert habe. Und das war noch zu Visual Basic 4 Zeiten unter Windows 98. Auf jeden Fall waren die Bitmaps viel zu klein und mit den Farben passte das auch nie.

Luckie 5. Jan 2005 23:15

Re: Menüeinträge mit Bitmaps
 
Aber es muss gehen. Denn wie es bei Loriot so schön heißt:
Zitat:

Die anderen machen es doch auch.
:mrgreen:

Sprint 5. Jan 2005 23:20

Re: Menüeinträge mit Bitmaps
 
Zitat:

Zitat von Luckie
Die anderen machen es doch auch.

Ja? Kein OwnerDraw? Delphi zeichnet die Bitmap's wohl selber. Bin mir aber nicht sicher.

Luckie 5. Jan 2005 23:23

Re: Menüeinträge mit Bitmaps
 
Bei den vielen Programmen mit Bitmaps in Menüs kann ich mir das eigentlich nicht vorstellen. Aber wa smacht denn dann das Feld in der Struktur?

Christian Seehase 5. Jan 2005 23:35

Re: Menüeinträge mit Bitmaps
 
Moin Luckie,

hast Du auch diesen Kommentar zu fType gesehen:

Zitat:

Zitat von PSDK
MFT_BITMAP is replaced by MIIM_BITMAP and hbmpItem

evtl. vertragen sich beide Angaben gleichzeitig nicht.

Luckie 5. Jan 2005 23:39

Re: Menüeinträge mit Bitmaps
 
Ich habe schon beide abwechselt und zusammen auskomentiert. Jetzt probiere ich es gerade mit selber zeichnen. Aber das ist ein ganz schöner Aufwand. :?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz