Italia
Foro

ComoboxEx Control mit Profan² 6.6

 
Der unten stehende Code soll eine Combobox mit Icons unter Profan 6.6 erzeugen. Frage: Auf welchem XP System corre dieser Code (unter Profan² 6.6) und wo corre der nicht (ServicePack und Prozessorgeschwindigkeit)? Es geht nicht um die Fehler, die ich hier gemacht habe...
KompilierenMarkierenSeparieren
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
    DIM PROC_NAME#,256
    DIM M_NAME#,256
    String PROC_NAME#,0=InitCommonControlsEx
    String M_NAME#,0=$SYSPATH+COMCTL32.DLL
    LET MHANDLE&=@GetModuleHandle(M_NAME#)
    LET M_Present&=@GetProcAddress(MHANDLE&,PROC_NAME#)
    Dispose PROC_NAME#
    Dispose M_NAME#

    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&

        IF M_Present&=0

            @ADDCHOICE(CBHandle&,Inserttext$)

        else

            @SendMessage(CBHandle&,$401,0,CBINSERT#)

        endif

        Dispose CBINSERT#
        Dispose CBTEXT#

    EndProc

    DIM INITC#,8
    long INITC#,0=8
    long INITC#,4=$200
    Windowstyle 31+512
    Windowtitle ComboboxEx
    Window 0,0-640,440

    If M_Present&=0

        Print NO
        LET ComoBoxEx&=@Control(ComboBox,,$40000000+$10000000+$200000+$100000+2+$40,0,100,150,180,%HWND,2615,%HINSTANCE)

    else

        @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#

    endif

    ComBoBoxInsertEx Claudia,ComoBoxEx&,0,0,0 put the item Claudia with the icon weg into the combobox
    ComBoBoxInsertEx Andreas,ComoBoxEx&,1,1,1 put the item Andreas with the icon windows into the combobox
    ComBoBoxInsertEx Dennis,ComoBoxEx&,2,2,2 put 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&)
    Dispose INITC#
 
18.02.2007  
 




Dieter
Zornow
Bei mir werden keine Icons in der Box gezeigt, alles andere funktioniert

Windows XP home SP2, XProfan 10

gruß

Dieter
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
18.02.2007  
 



XProfan ist klar, da kann das nicht laufen wegen des Manifests! Es geht um 6.6.
 
18.02.2007  
 




Dieter
Zornow
Habe deinen Code mal abgeändert, dann corre er auch unter Xprofan 10, habe nun gerade eben mit 6.6 getestet, damit funktioniert er auch im Original . Ich denke die COMCTL32.DLL hat jeder standardmäßig auf dem PC, sonst würde ja vieles in Windows
nicht funktionieren, das muss nicht abgeprüft werden. Vielleicht wäre nur die Version interessant
KompilierenMarkierenSeparieren
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&)
    ='./../../references-fonction/xprofan/dispose/'>Dispose INITC#
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
18.02.2007  
 



Lies doch mal ganz oben - darum geht es nicht!

Warum der bei dir unter XProfan10 nicht corre, potrebbe wohl jedem klar sein - das liegt am Manifest (schau mal mit TNT nach). Es geht mir darum, ob der so wie der von mir gepostet wurde unter 6.6 nicht corre.
 
18.02.2007  
 




Dieter
Zornow
Ich hatte das oben schon gepostet, wurde aber abgeschnitten.
Unter 6.6 corre er bei mir
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
18.02.2007  
 



Danke, das stellt mein Weltbild wieder her .
 
18.02.2007  
 




Jörg
Sellmeyer
Hallo Andreas,
XP Pro, SP2, Profan 6.6: Es corre und in der Combobox sind 3 Icons mit Namen zu sehen.
 
Windows XP SP2 XProfan X4
... und hier mal was ganz anderes als Profan ...
18.02.2007  
 



Danke, wunderbar. Test hat sich damit erledigt.
 
18.02.2007  
 



Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

606 Views

Untitledvor 0 min.
iF01.07.2012

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie