Français
Source/ Codesnippets

Api Combobox Icônes Per

 

KompilierenMarqueSéparation
Source wurde am 15.07.2007 aus der MMJ-Quellcodesammlung (Dietmar Horn) in die Babyklappe auf XProfan.Com abgelegt:
ComboBox per API mit Icons
(C) 2007 Andreas Hötker
http://www.ah-shareware.de
Declaring new functions for Profan² 6.6 through windows API
Def @InitCommonControlsEx(1) !COMCTL32,InitCommonControlsEx
DEF @ImageList_Create(5) !COMCTL32,ImageList_Create
DEF @ImageList_AddIcon(2) !COMCTL32,ImageList_AddIcon
DEF @ImageList_Destroy(1) !COMCTL32,ImageList_Destroy
DEF @GetModuleHandle(1) !KERNEL32,GetModuleHandleA
DEF @LoadIcon(2) ! USER32,LoadIconA
DEF @GetProcAddress(2) !KERNEL32,GetProcAddress
Declare INITC#,ComoBoxEx&,Imagelist&,Iconname#
Declare ExecuteHandle&,Hicon&,M_Present&
Declare Proc_Name#,MHandle&,M_NAME#
Declare CBTEXT#,CBINSERT#
This peace of code is for looking, if icons can be placed in ComboBox.

If InitCommonControlsEx doesnt exist in the system-dll COMCTL32.DLL, there is displayed

    a normal combobox without icons

    Proc ComBoBoxInsertEx

        You can place other icons for selected items, but in the code it is not done (that why there are 3 icons)
        Parameters Inserttext$,CBHandle&,Icon1&,Icon2&,Icon3&
        DIM CBINSERT#,36
        DIM CBTEXT#,256
        Clear CBINSERT#
        String CBTEXT#,0=Inserttext$
        Long CBINSERT#,0=$1+$2+$4+$8
        Long CBINSERT#,4=-1
        Long CBINSERT#,8=CBTEXT#
        Long CBINSERT#,12=Icon1&
        Long CBINSERT#,16=Icon2&
        Long CBINSERT#,20=Icon3&
        @SendMessage(CBHandle&,$401,0,CBINSERT#)
        Dispose CBINSERT#
        Dispose CBTEXT#

    EndProc

    DIM INITC#,8
    long INITC#,0=8
    long INITC#,4=$4000
    Windowstyle 31+512
    Windowtitle ComboboxEx
    Window 0,0-640,440
    @InitCommonControlsEx(INITC#)
    DIM Iconname#,256
    Let Imagelist&=@ImageList_Create(16,16,$0001,3,3)create imagelist
    Let ExecuteHandle&=@GetModuleHandle(0)Handle of the Profan-exe
    String ICONNAME#,0=Weg
    Let Hicon&=@loadicon(Executehandle&,Iconname#)Get the handle of the icon weg
    @ImageList_AddIcon(Imagelist&,HIcon&)put the icon into the imagelist
    String ICONNAME#,0=Windows
    Let Hicon&=@loadicon(Executehandle&,Iconname#)Get the handle of the icon windows
    @ImageList_AddIcon(Imagelist&,HIcon&)put the icon into the imagelist
    String ICONNAME#,0=Editor
    Let Hicon&=@loadicon(Executehandle&,Iconname#)Get the handle of the icon editor
    @ImageList_AddIcon(Imagelist&,HIcon&)put the icon into the imagelist
    LET ComoBoxEx&=@Control(ComboBoxEx32,,$40000000+$10000000+$200000+$100000+2+$40,0,100,150,180,%HWND,2115,%HINSTANCE)
    @Sendmessage(ComoBoxEx&,$402,0,Imagelist&)
    dispose Iconname#
    ComBoBoxInsertEx Claudia,ComoBoxEx&,0,0,0put the item Claudia with the icon weg into the combobox
    ComBoBoxInsertEx Andreas,ComoBoxEx&,1,1,1put the item Andreas with the icon windows into the combobox
    ComBoBoxInsertEx Dennis,ComoBoxEx&,2,2,2put the item Dennis with the icon editor into the combobox

    While %Key<>2

        Waitinput
        Drawtext 0,0,@Gettext$(ComoBoxEx&)+@Space$(255)

    Wend

    @ImageList_Destroy(Imagelist&)
    href='./../../function-references/XProfan/dispose/'>Dispose INITC#
 
15.07.2007  
 



Zum Quelltext


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

2.387 Views

Untitledvor 0 min.
Peter Max MĂĽller01.11.2019
Georg Teles30.10.2019
ByteAttack22.11.2015
Julian Schmidt28.07.2011
plus...

Themeninformationen

cet Thema hat 1 participant:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie