Unterschied Icon/Image

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!

  • Hallo,

    ich hoffe, dass ich mich richtig ausdrücken kann. Für die Ribbon.dll benötige ich ein bisschen Hilfe. Bilder kann ich problemlos mit profaninternen Funktionen laden und an die DLL weiterleiten. Wenn ich jedoch ein Icon erstelle (mittels Create("hIcon",...)), funktioniert das nicht. Ich weiß, das Icons und Bilder zum Teil unterschiedlich gehandhabt werden.

    Gibt es eine XProfan-interne Möglichkeit das kompatibel zu laden? Wenn ich hPic verwende geht die Transparenz flöten.

    XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
    Ryzen 5800X/Gigabyte B550m DS3H/32GB RAM@3600MHz/Radeon HD7770 OC/Asus Xonar SE/108TB HDD+512GB Samsung 980 Pro+2TB Crucial SSD/28" Samsung 4k
    TerraMaster F4-421 mit 28TB
    XBox Classic/360S/Series X/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84)
    OnePlus 6 8GB/256GB
    jacdelad.bplaced.net

  • Soll die DLL das Handle des Icons bekommen ?

    Schiebe das Icon mal in eine ImageListe und lese

    das Handle mit ImageList("GetIcon", imglist&, 0)


    so etwa :

    Code
    Cls
    Declare Handle img
    img = Create("ImageList", 32, 32)
    ImageList("AddIcon", img, Create("hIcon", "Gesicht"))
    
    DrawIcon img, 0, 100, 100
    Print "Handle des Icons : ", ImageList("GetIcon", img, 0)
    
    Waitkey
    DeleteObject img
  • Das Handle kommt an, das Ich kann ich inzwischen mit GetIconInfo() auslesen (einmal als 24-Bit-Bitmap und einmal als Alpha-Maske). Ich kann es jetzt auch schon anzeigen lassen, aber transparente Bereiche werden schwarz. Ich muss das in PureBasic lösen.


    Was mich total verwundert, ist dass es erst ging und jetzt plötzlich nicht mehr. Ich hab so viel an dem Ribbon geändert, aber immer nur in PureBasic getestet. Aus einmal ging es in XProfan nicht mehr (per DLL).

    XProfan-Semiprofi (XProfan X4a+XPIA+LemonEd)
    Ryzen 5800X/Gigabyte B550m DS3H/32GB RAM@3600MHz/Radeon HD7770 OC/Asus Xonar SE/108TB HDD+512GB Samsung 980 Pro+2TB Crucial SSD/28" Samsung 4k
    TerraMaster F4-421 mit 28TB
    XBox Classic/360S/Series X/PS3 Super Slim 500GB/PS4 Pro (XBL-ID: jacdelad, PSN: jacdelad84)
    OnePlus 6 8GB/256GB
    jacdelad.bplaced.net

  • Vielleicht hilft dir das weiter :

  • Gilt eigentlich die alte Prä-Win7-Regel noch, daß das linke obere Pixel eines Icons die Transparenzfarbe darstellt?

    HP255G7:Win10pro2.004,4*AMD Ryzen3200U@2.60GHz,6+2GB-RadeonVega/237GBSSD:intlDVDRW,3xUSB3 ext4TB-HDX,XProfanX3+Xasm/Xpse

  • Bei Icons weiß ich es nicht. Bei BMP siehe in der Profanhilfe :


    Aber vielleicht könnte man bei der Imageliste mit Sendmessage was machen.

    Code
    DEF &ILC_MASK $0001
    DEF &ILC_COLOR32 $0020
    SendMessage(imglist, &ILC_MASK|&ILC_COLOR32, 0, 0)

    Oder mit einer BMP mit DrawPic im Kopiermodus (-1).