English
Source / code snippets

Api Combobox Icons Per

 

CompileMarkSeparation
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#
 
07/15/07  
 



Zum Quelltext


Topictitle, max. 100 characters.
 

Systemprofile:

no Systemprofil laid out. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Please register circa a Posting To verfassen.
 

Topic-Options

2.389 Views

Themeninformationen

this Topic has 1 subscriber:

unbekannt (1x)


Admins  |  AGB  |  Applications  |  Authors  |  Chat  |  Privacy Policy  |  Download  |  Entrance  |  Help  |  Merchantportal  |  Imprint  |  Mart  |  Interfaces  |  SDK  |  Services  |  Games  |  Search  |  Support

One proposition all XProfan, The there's!


My XProfan
Private Messages
Own Storage Forum
Topics-Remember-List
Own Posts
Own Topics
Clipboard
Log off
 Deutsch English Français Español Italia
Translations

Privacy Policy


we use Cookies only as Session-Cookies because of the technical necessity and with us there no Cookies of Drittanbietern.

If you here on our Website click or navigate, stimmst You ours registration of Information in our Cookies on XProfan.Net To.

further Information To our Cookies and moreover, How You The control above keep, find You in ours nachfolgenden Datenschutzerklärung.


all rightDatenschutzerklärung
i want none Cookie