Español
Unidades

Einfachstes ListView erzeugen (Unit) - Descargar

 
- Página 1 -



Michael
Dell
plv.pcu v2.4

Befehlsliste:

plv.CreateListView()
plv.DelLView()
plv.SetHeader()
plv.SetRow()
plv.ReSetItem()
plv.GetRow()
plv.DelAll()
plv.DelRow()
plv.gSelItems()
plv.gCheckItems()
plv.sCheckItem()
plv.BKCol()
plv.tCol()
plv.tBKCol()
plv.UpDate()
plv.SetFnt()
plv.ResFnt()
plv.gImgXY()
plv.Ico2Lst()
plv.GetHeader()
plv.GetHeaderOrder()
plv.SetHeaderOrder()
plv.Versión$()
plv.HitSortsLV()

Autores: Richard Maurukas, Michael Dell, Rolf Koch, Carlo Keil, efisch, Thomas R. & Dieter Zornow

Geändert al: 05.12.2007

Los cambios v2.4: XProfan v11 Problema gelöst. Dank, Dieter Zornow!!!
plv como Incluir plv.pinc inkl. Ejemplo beigelegt.

56 kB
Kurzbeschreibung: pöv v2.4
Hochgeladen:05.12.2007
Ladeanzahl563
Descargar
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
22.10.2004  
 



 
- Página 3 -



Michael
Dell
Das isses sí, el debería con Icons ser

Hab todos veces n bisserl umgestrickt, vieleicht lag el problema en él el el Imagelist antes el Listview producido wurde.
Jetzt se ellos danach producido allerdings intern (heißt en un Befehl) y direkt el Listview zugeordnet, veces sehn si el ahora se ejecuta.

Saludo

Michael...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
02.11.2004  
 




Rolf
Koch
Sorry, aber siempre todavía el gleiche. Keine Icons a sehen.

Rolf
 
02.11.2004  
 




Michael
Dell
Hrrmpff! Gnade, naja kreig Yo ya todavía hin.

Saludo...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
02.11.2004  
 




Rolf
Koch
:+D)-- Jo, el saber Yo.
Man ha gerade el Gefühl, daß lo perfekt se ejecuta y siehe como: Nein, Bill G. macht una con el verschiedenen Windows Versionen veces otra vez una Strich por el Rechnung.
Von cada Programmierer se esperado, daß uno kompatibel restos - sin embargo Mircosoft ha dies de Versión a Versión no nötig. Ist sí como en Nintendo. Jede Konsole el en el Markt kam, hatte una más Medium - no como en PS y PS2 de Sony. Dies simplemente sólo veces al Rande. Huch ahora tener Yo mich aber weit vom Thema lejos
Rolf
 
02.11.2004  
 




Frank
Abbing
Hi.

Michael, schick me dein Stück Code doch veces a y yo Comparar lo veces con mi Maschinencode.
 
02.11.2004  
 




Normann
Strübli
Hi,

Si usted el Ver código fuente no rausrücken willst entonces guck Usted el Folgenden veces a.
En me funktioniert todos.
Nebenbei son como auch Subitem-Images enthalten -kannst Usted sí igual con
einbauen :biggrin:

Tal vez findest Usted el Fehler sí así...
KompilierenMarcaSeparación
 $H commctrl.ph
DEf LockWindowUpdate(1) ! "USER32","LockWindowUpdate"
Def InitCommonControls(0) !"COMCTL32","InitCommonControls"
InitCommonControls()
DEF ExtractIcon(3) !"SHELL32","ExtractIconA"
window 30,30-550,300
usefont "MS Sans Serif",15,7,0,0,0
setdialogfont 1
settruecolor 1
----------------------------------------------------------------ImageList
declare IcoList&
Def SetWindowlong(3) ! "USER32.DLL","SetWindowLongA" zum Ändern des Fensterstils
def ImageList_Create(5) !"COMCTL32","ImageList_Create"
def ImageList_AddIcon(2) !"COMCTL32","ImageList_AddIcon"
def ImageList_Destroy(1) !"COMCTL32","ImageList_Destroy"
def LoadIcon(2) !"USER32","LoadIconA"
Def ImageList_Add(3) !"COMCTL32","ImageList_Add"
declare himagelist&,e%,datei#,imagehandle&
DECLARE PictureObject&
IcoList&=ImageList_Create(18,18,1,1,0)---Parameter 1+2: Grösse der Icons
ImageList_AddIcon(IcoList&,PictureObject&)---SystemIcons laden
ImageList_AddIcon(IcoList&,LoadIcon(0,32512))---SystemIcons laden
ImageList_AddIcon(IcoList&,LoadIcon(0,32513))
ImageList_AddIcon(IcoList&,LoadIcon(0,32514))
Declare LVColumntext#,LVCOLUMN#
Dim LVColumntext#,255
Dim LVCOLUMN#,300

PROC LVINSERTCOLUMN --------------------HEADER-für ReportStil--------------------------

    string LVColumnText#,0 = @$(5)      Der Übergebene Text in @$(4)        ok
    long LVCOLUMN#,0 = $000F            MAsk,Text|Format|Width|Subitem      ok
    long LVCOLUMN#,4 = @&(3)            Ausrichtung                In @&(2) ok
    long LVCOlumn#,8 = @&(4)            Width of Column in Pixeln. In @&(3) ok
    Long LVColumn#,12= LVColumnText#    die Adresse aus LVColumntext#       ok
    sendmessage(@&(1),$101B,@&(2),LVColumn#) Insertcolumn. in @&(1)        ok
    ENDPROC -------------------------------------------------------------------------
    def LvInsertColumn(2) sendmessage( &(1),~LVM_INSERTCOLUMN,%(2),Lvc# )
    def LvInsertItem(1) if(Lv#.SubItem&,sendmessage(&(1),~LVM_SETITEMTEXT,Lv#.Item&,Lv#),sendmessage(&(1),~LVM_INSERTITEM,0,Lv#))
    def LvGetSelect(2) sendmessage( &(1),~LVM_GETNEXTITEM,&(2),~LVIS_SELECTED )
    def LvGetItemText(2) sendmessage( &(1),~LVM_GETITEMTEXT,&(2),Lv# )
    def LvSetItem(1) sendmessage( &(1),~LVM_SETITEM,0,Lv# )
    Declare LV_Handle&    Handle des Aktuellen listviews
    ---------------------------------------------------------------------------------Funktionen

    proc InsertColumn

        Parameters LV_Handle&,mask&,Fmt&,Cx&,Text$,Textmax&,Subitem&,Image&,Order&
        LvInsertColumn(@&(1),0)

    Endproc

    >>> Setzt die Eigenschaften für das Listview...

    Proc SetItem

        Parameters LV_Handle&,mask&,state&,statemask&,image&,item&,subitem&,text$
        Lv#.Mask&   = @&(2)
        Lv#.state&  = @&(3)
        Lv#.statemask&  = @&(4)
        Lv#.Image&   = @&(5)
        Lv#.Item&    = @&(6)
        Lv#.SubItem& = @&(7)
        Lv#.Text$    = @$(8)
        LvInsertItem(Lv1&)
        Lv#.Mask&   =~LVIF_IMAGE
        LvSetItem(Lv1&)

    endproc

    declare Lvc#,Lv#,Lv1&
    Lv1&=control("SysListView32","",$54010009,0,0,550,300,%hwnd,1,%hinstance,$200)
    sendmessage(Lv1&,~LVM_SETIMAGELIST,1,IcoList&)--------ListView mit ImageList verbinden
    sendmessage(Lv1&,~LVM_SETEXTENDEDLISTVIEWSTYLE,0,~LVS_EX_GRIDLINES | ~LVS_EX_SUBITEMIMAGES | ~LVS_EX_CHECKBOXES | ~LVS_EX_FULLROWSELECT | ~LVS_EX_HEADERDRAGDROP | ~LVS_EX_FLATSB | ~LVS_EX_INFOTIP)
    sendmessage(lv1&,$1001,0,$00AAAAAA)     Hintergrund-Farbe ok |
    sendmessage(lv1&,$1024,0,$000000FF)     Text-Farbe        ok |
    sendmessage(lv1&,$1026,0,$FFFFFFFF)     TextHintergrund-Farbe transparent? -1
    -----------------Font des Headers ändern
    declare Font&,Header&
    Font&=Create("Font","Arial",18,0,1,0,0)
    Header&=sendmessage(Lv1&,~LVM_GETHEADER,0,0)
    setfont Header&,Font&
    struct Lvc=Mask&,Fmt&,Cx&,Text&,TextMax&,SubItem&,Image&,Order&,Text$(20)
    dim Lvc#,Lvc
    clear Lvc#
    Lvc#.Mask&    =~LVCF_TEXT | ~LVCF_IMAGE | ~LVCF_WIDTH
    Lvc#.Text&    =Lvc#+32
    Lvc#.TextMax& =200
    Lvc#.Cx&   =180   Breite
    Lvc#.Image&=1
    Lvc#.Text$ ="Spalte 1"
    LvInsertColumn(Lv1&,0)
    Lvc#.Cx&   =120
    Lvc#.Image&=0
    Lvc#.Text$ ="Spalte 2"
    LvInsertColumn(Lv1&,1)
    Lvc#.Cx&   =120
    Lvc#.Image&=1
    Lvc#.Text$ ="Spalte 3"
    LvInsertColumn(Lv1&,2)
    dispose Lvc#
    struct Lvi=Mask&,Item&,SubItem&,State&,StateMask&,Text&,TextMax&,Image&,Param&,Text$(200)
    dim Lv#,Lvi
    clear Lv#
    Lv#.Text&   =(Lv#+36)
    Lv#.TextMax&=200----Maximal zu erwartende Textlänge entspricht Länge von Lv#.Text$
    -------------------------------------------------Item 1
    Lv#.Mask&   =~LVIF_TEXT | ~LVIF_PARAM | ~LVIF_STATE
    Lv#.Image&   =2
    Lv#.Item&    =0
    Lv#.SubItem& =0
    Lv#.Text$    ="Eintrag 1"
    LvInsertItem(Lv1&)
    Lv#.SubItem& =1
    Lv#.Text$    ="Eintrag 2"
    LvInsertItem(Lv1&)
    Lv#.Mask&   =~LVIF_IMAGE
    Lv#.Image&  =2
    LvSetItem(Lv1&)
    Lv#.Mask&   =~LVIF_TEXT | ~LVIF_PARAM | ~LVIF_STATE
    Lv#.Image&   =1
    Lv#.Item&    =1
    Lv#.SubItem& =0
    Lv#.Text$    ="Eintrag 3"
    LvInsertItem(Lv1&)
    Lv#.SubItem& =1
    Lv#.Text$    ="Eintrag 4"
    LvInsertItem(Lv1&)
    Lv#.Mask&   =~LVIF_IMAGE
    Lv#.Image&  =7
    LvSetItem(Lv1&)
    Lv#.Mask&   =~LVIF_STATE
    Lv#.Image&   =1
    Lv#.Item&    =0
    Lv#.SubItem& =0
    Lv#.state&  = 12092
    Lv#.statemask&  = $F000
    sendmessage(lv1&,~LVM_SETITEM,0,lv#)  Neue Attribute setzen
    setitem lv1&,~LVIF_TEXT | ~LVIF_PARAM | ~LVIF_STATE | ~LVIF_IMAGE,0,0,0,2,0,"Text1"
    setitem lv1&,~LVIF_TEXT | ~LVIF_PARAM | ~LVIF_STATE | ~LVIF_IMAGE,0,0,0,2,1,"Text2"
    setitem lv1&,~LVIF_TEXT | ~LVIF_PARAM | ~LVIF_STATE,0,0,0,2,2,"Text3"

    while 1

        waitinput

    wend

    destroywindow(Lv1&)
    ImageList_Destroy(IcoList&)
    DeleteObject Font&
    disponer Lv#
 
02.11.2004  
 




Michael
Dell
¡Hola Normann,

en el Gefahr hin dich a enttäuschen Yo verwende el selben APIs y Messages como en deinem y algunos otro
Beispielen auch!!!

El folgenden Strukuren son sicher bekannt:
KompilierenMarcaSeparación
Struct LV_COLUMN = Maske&,Formate&,SpaltenBreite&,pointerText&,TextLen&,Spalte&
Struct LV_Item   = Maske&,Zeile&,Spalte&,Status&,StatusMaske&,pointerText&,TextLen&,ImgIndex&,lParam
e>

Lediglich el auslesen el ListView_CheckBoxen es no así bekannt: (oder Yo habs simplemente no entdeckt!)
KompilierenMarcaSeparación
Proc IsItemChecked

    Parameters lvHndl&,Row&
    Declare Item#,erg&
    Dim Item#,LV_Item

    With Item#

        .Maske&       = $0008
        .Zeile&       = Row&
        .Spalte&      = 0  (Col&)
        .Status&      = 2
        .StatusMaske& = $F000

    EndWith

    SendMessage(lvHndl&,$1005,Row&,Item#)
    erg& = Equ(Item#.Status&,8192)
    Dispose Item#
    Return erg&

ENDPROC


Und así es alles bekannt, Yo verwende no geheimen Tricks más o menos!

Saludo

Michael...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
03.11.2004  
 




Manfred
Barei
¡Hola Michael,

Funktioniert bajo NT4.0 (Servicepack 6) Einwand Frei, Icons voluntad todos Angezeigt. :+)--

Grus de el Lüneburger Heide de Manfred ( más así )
 
Zu wenig Wissen ist gefärlich, zu viel auch.(XProfan X4) | Win 10 Pro 64 | Win7 Ultimate 32/64 | AMD FX-8320, 16GB, GeForce GT 630 |
03.11.2004  
 




Normann
Strübli
Mppff!

Michael, Yo quería con el Ejemplo en efecto no zeigen WIE Usted lo hacer sollst.
(is klar el Usted el weißt)
Lo va por lo tanto el dieses Ejemplo en el gegensatz a Deiner Exe en
me einwandfrei funktioniert!

Also muß como doch irgendeine Kleinigkeit anders ser oder :?:

Saludo
Normann
 
03.11.2004  
 




Rolf
Koch
Sí, stimmt, Normans Ejemplo funktioniert komischerweise con Icons auch en me.
Rolf
 
03.11.2004  
 




Michael
Dell
Sí, después de meiner pequeño Reise en el WinXP Land (Besuch en Mom!) Tuve después de el ego veces incluso gesehen tener el Gefühl el WinXP media Stil no mag , media Control- Stil genau dijo.

Hab el veces entsprechend geändert y hochgeladen, en WinXP testen kann ego aber sólo Morgen.

Saludo...
 
Salu Michael...

Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! 
03.11.2004  
 




Rolf
Koch
Images en el Listview: 0

Leider siempre todavía no. Komisch, oder?

Rolf
 
03.11.2004  
 




Respuesta


Título del Tema, max. 100 Signo.
 

Systemprofile:

Kein Systemprofil creado. [anlegen]

XProfan:

 Contribución  Font  Smilies  ▼ 

Bitte registro en una Contribución a verfassen.
 

Tema opciones

59.352 Views

Untitledvor 0 min.
Gast.081512.10.2024
Erhard Wirth14.06.2024
Axel Berse03.12.2023
RudiB.08.04.2022
Más...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autores  |  Chat  |  Política de Privacidad  |  Descargar  |  Entrance  |  Ayuda  |  Merchantportal  |  Pie de imprenta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Juegos  |  Búsqueda  |  Support

Ein Projekt aller XProfan, el lo son!


Mi XProfan
Privado Noticias
Eigenes Ablageforum
Temas-Merkliste
Eigene Beiträge
Eigene Temas
Zwischenablage
Cancelar
 Deutsch English Français Español Italia
Traducciones

Política de Privacidad


Wir uso Cookies sólo como Session-Cookies wegen el technischen Notwendigkeit y en uns hay no Cookies de Drittanbietern.

Wenn du hier en unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung de Informationen en unseren Cookies en XProfan.Net a.

Weitere Informationen a unseren Cookies y dazu, como du el Kontrolle darüber behältst, findest du en unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Yo möchte no Cookie