| |
|
|
- Seite 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.Version$() plv.HitSortsLV()
Autoren: Richard Maurukas, Michael Dell, Rolf Koch, Carlo Keil, efisch, Thomas R. & Dieter Zornow
Geändert am: 05.12.2007
Änderungen v2.4: XProfan v11 Problem gelöst. Dank, Dieter Zornow!!! plv als Include plv.pinc inkl. Beispiel beigelegt. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 22.10.2004 ▲ |
|
|
|
| |
|
- Seite 5 - |
|
|
efisch | Hallo,
Weil ich Daten, die ich mit der PLV-Unit anzeige nicht noch einmal in einem Array speichern möchte, benötige ich eine Funktion, die den Inhalt einer Zelle des Listviews zurückgibt. Da meine Versuche mit LVM_GETITEMTEXT in die Hose gegangen sind (vermutlich klemmts bei meinem Verständnis der Feinheiten der LV_Item Struktur), hoffe ich, das es hier bei irgendeinem hilfsbereiten Menschen weniger klemmt und er eine entsprechende Funktion postet.
Danke Ebi |
|
|
| |
|
|
|
Michael Dell | Hallo,
werd mal sehn was ich für Dich machen kann. Wird etwas dauern, aber ich kümmer mich drum. Versprochen! |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 19.12.2005 ▲ |
|
|
|
|
Michael Dell | Ok, hab grad Version 1.8 hochgeladen.
Hinzu gekommen ist:
plv.GetRow(LV_Hndl&,Zeile&) --> Liest eine ganze Zeile (Spalten sind durch | getrennt) Das funktioniert nach dem Speicherprinzip, soll heißen wenn die Zeile mit plv.SetRow() erstellt wurde kann sie auch mit plv.GetRow() ausgelesen werden.
Test es mal an... |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 19.12.2005 ▲ |
|
|
|
|
Carlo Keil | Ich hatte Ebis Problem kürzlich auch und bin auf die unten stehende Lösung gekommen. Damit kann ich einzelne Zellen gezielt beschreiben und auslesen. (Ich gebs ja zu, SetCell war einfach, weil AddItem bereits vorhanden war).
@Michael: ich halte es für eine Überlegung wert, diesen Codeschnipsel noch einzubauen, damit eben auch einzelne Zeilen zugänglich sind.
Gruß Carlo KompilierenMarkierenSeparieren
Proc ?_SetCell
Parameters lvHndl&, RowNr&, ColNr&, Text$
AddItem(lvHndl&, RowNr&, ColNr&, Text$)
EndProc
-----------------------------------------------------------------------------
Proc ?_GetCell
Parameters lvHndl&, Zeile&, Spalte&
Declare Item#, Text#, t$
Dim Item#, LV_Item
Dim Text#, 255
With Item#
.pointerText& = Text# Textpuffer für Zelleninhalt
.TextLen& = 255 Pufferlänge
.Spalte& = Spalte&
SendMessage(lvHndl&, 4141, Zeile&, Item#)
EndWith
t$ = @String$(Text#, 0)
Dispose Text#
Dispose Item#
Return t$
EndProc
|
|
|
| |
|
|
|
Michael Dell | Hi Carlo,
gute Idee etwas ähnliches hatte ich schon im Sinn. Also folgendes ist daraus geworden: plv.GetRow() & plv.SetRow() lesen & schreiben jetzt sowohl ganze Zeilen als auch einzelne Zellen und natürlich ließt plv.GetRow() jetzt wirklich aus dem Listview wie es sich gehört.
plv.SetRow(LV_Hndl&,Zeile&,DatNam.exe|23.456,IcoNr&,Schalter&) --> Schreibt eine ganze Zeile nach lv.SetHeader -- IcoNr& > -1 kein Icon -- Schalter& > 0 = Ganze Zeile >0 = SpaltenNummer
plv.GetRow(LV_Hndl&,Zeile&,Schalter&) --> Liest eine ganze Zeile (Spalten sind durch | getrennt) -- Schalter& > 0 = Ganze Zeile >0 = SpaltenNummer
Version 1.9 ist jetzt Online!
Was meinst Du, ist doch ganz gut geworden oder? |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 19.12.2005 ▲ |
|
|
|
|
Michael Dell | Hat sich da doch glatt ein kleiner Bug eingeschlichen! plv.GetRow hat nicht korreckt einzelne Zellen ausgelesen!!!
Naja is ja wieder in Ordnung. |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 20.12.2005 ▲ |
|
|
|
|
efisch | Hallo Michael,
in der Prozedur GetItem der Version 1.9 solltest du vor dem ENDPROC noch ganz schnell die Zeile KompilierenMarkierenSeparieren einbauen.
Gruß Ebi |
|
|
| |
|
|
|
Michael Dell | Peinlich, peinlich!
Und mir qualmt der Schädel weil ich nich rauskrieg warum das Ding im Interpreter nicht läuft dabei wars ein Wunder das es Compiliert ging!
Danke, da hät ich noch ne Weile drangesessen! |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 20.12.2005 ▲ |
|
|
|
|
| Funktioniert alles perfekt - tolles Teil!
Wenn die beigelegte plv.prf die Unit ist, dann möchte aber auch noch ein bisl mehr dazu sagen.
<senf>
Als Unit wäre das ein - bitte nicht falsch verstehen! - ein schlimmes Verbrechen.
Du deklarierst Defs und Variablen und Structs ohne Namensraumsymbol - was natürlich (fast) niemals in einer Unit passieren sollte.
</senf>
*duck*
Spielt aber keine Rolle - denn der Code liegt ja bei - und der ist schliesslich super. |
|
|
| |
|
|
|
Michael Dell | Komm doch mal da raus! Na...
Spass beiseit, klar (nur) eine der Globalen wird Extern gebraucht die hab ich korrigiert. Die andern Internen sind nun deutlicher benannt!
Bin froh das die PLV funzt und anklang findet (Danke!!!). Mit etwas Hilfe ist ja doch noch was aus dem kleinen (ursprünglichen Eigenbedarfs) Projekt geworden.
Dank der Community! |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 23.01.2006 ▲ |
|
|
|
|
Jac de Lad | Hallo Michael!
Das Teil ist echt der Hammer! Es hat in vielen meiner Programme schon einen Stammplatz bekommen! Ich hab aber mal ne Frage: Mit einem bestimmten Stil kann man einstellen, dass der Benutzer die Anordnung der Spalten per DragnDrop vertauschen kann. Kann man irgendwie abfragen, wie die aktuelle Reihenfolge ist (zwecks Speichern und beim nächsten Start des Programms wieder so Anordnen)?
Jac |
|
|
| Profan² 2.6 bis XProfan 11.1+XPSE+XPIA+XPRR (und irgendwann XIDE) Core2Duo E8500/T2250, 8192/1024 MB, Radeon HD4850/Radeon XPress 1250, Vista64/XP | 29.01.2006 ▲ |
|
|
|
|
Michael Dell | Hi Jac,
gute Frage hab da so ne Idee aber erst mal testen.
Melde mich dann... |
|
|
| Salu Michael...
Hab zwar krumme Fieß awer dofir e' ecklich Gsicht! | 29.01.2006 ▲ |
|
|
|