| |
|
|
![Jörg Sellmeyer: 02.03.2005](.././../../i/a/8132362004294faafc5e8c.jpg) Jörg Sellmeyer | Hallo Frank, Könntest Du vielleicht eine Funktion zur fortlaufenden Numerierung der Spalten einbauen? Etwa so: KompilierenMarkierenSeparierenProc SetNumbers
Parameters LV&,Spalte&,hdl&,Text$
Declare nr$,Lines&,00$
Lines& = GetLines(LV&)
00$ = MkStr$("0",Len(Str$(Lines&)))
If %pcount = 1
WhileLoop 0,Lines& -1
Case IsKey(27):Break
nr$ = Format$(00$,&Loop)
SetItemText(LV&,Addr(nr$),Spalte&,&Loop)
Wend
ElseIf %pcount = 3
WhileLoop 0,Lines& -1
Case IsKey(27):Break
nr$ = Format$(00$,&Loop)
SetItemText(LV&,Addr(nr$),Spalte&,&Loop)
SetText hdl&,Text$ + nr$
bei hoher Geschwindigkeit erübrigt sich das mit dem Text evtl. aber so ist eine
Fortschrittsanzeige möglich
Wend
EndIf
EndProc
Ich hatte neulich das Vergnügen einige -zigtausend Zeilen zu numerieren. In Assembler dauert das wahrscheinlich nur Millisekunden. Mit Profan habe ich nach 10 Minuten bei ca. 50000 abgebrochen. Saluto Jörg |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... ![](https://www.wuestensand.info/images/CoverFataMorganaklein.jpg) | 02.03.2005 ▲ |
|
|
|
|
![Frank Abbing: 02.03.2005](.././../../i/a/noavatar.gif) Frank Abbing | Hallo Jörg,
klar, sollte nicht allzu aufwendig sein. Allerdings werkle ich gerade an einer Add-On-Dll per die Listview.dll. Das hat höchste Priorität! |
|
|
| |
|
|
|
![iF: 02.03.2005](.././../../i/a/1.gif) | Gib ihm doch einfach nen xpia-beispiel ![](.././../../i/s/icon_redface.gif)
Salve, iF |
|
|
| |
|
|
|
![Frank Abbing: 03.03.2005](.././../../i/a/noavatar.gif) Frank Abbing | Hi,
potuto ich naturalmente machen. Aber ich halte so eine Funktion per die Listview.dll per sehr sinnvoll. Darum werde ich sie dort aufnehmen. ![](.././../../i/s/_n_shades_smile.gif) |
|
|
| |
|
|
|
![iF: 03.03.2005](.././../../i/a/1.gif) | Richtig - finde ich auch Sinnvoll!
So ein Beispielchen wäre trotzdem sehr interessant und gut bei Deinen ASM-Beispielen aufgehoben - oder sogar hier.
Es würde halt zeigen wie man die Listview.DLL (wo es ja doch oft um viele Einträge geht) mit XPIA zusammen nutzen kann.
Salve, iF |
|
|
| |
|
|
|
![Frank Abbing: 03.03.2005](.././../../i/a/noavatar.gif) Frank Abbing | Hi.
[quote:67a10e7051]Es würde halt zeigen wie man die Listview.DLL (wo es ja doch oft um viele Einträge geht) mit XPIA zusammen nutzen kann. [/quote:67a10e7051] Ist doch nur eine Schleife, in der eine Message immer wieder aufgerufen wird. Weder interessant, noch per sonderlich lehrreich. Und nur ganz wenig Assembler, dafür mehr Strukturen... ![](.././../../i/s/eusa_think.gif) |
|
|
| |
|
|
|
![Jörg Sellmeyer: 03.03.2005](.././../../i/a/8132362004294faafc5e8c.jpg) Jörg Sellmeyer | >Weder interessant, noch per sonderlich lehrreich.
Ooch... mach doch mal trotzdem :roll: |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... ![](https://www.wuestensand.info/images/CoverFataMorganaklein.jpg) | 03.03.2005 ▲ |
|
|
|
|
![iF: 03.03.2005](.././../../i/a/1.gif) | @Jörg: Du hältst Frank fest - ich kitzle Ihn an de Füße bis ihm der ASM-25-Zeiler ausm Gesicht fällt. ![](.././../../i/s/02.gif)
Salve, iF ![](.././../../i/s/eusa_shifty.gif) |
|
|
| |
|
|
|
![CB: 04.03.2005](.././../../i/a/188878350943cea808357ab.jpg) CB | OhGottohGott ![](.././../../i/s/02.gif) ich habs mir gerade versucht, bildlich vorzustellen, wie das wohl aussehen mag, wenn Frank lachend und kichernd Assembler flucht ![](.././../../i/s/motz.gif) |
|
|
| |
|
|
|
![Jörg Sellmeyer: 04.03.2005](.././../../i/a/8132362004294faafc5e8c.jpg) Jörg Sellmeyer | Das wär doch mal was! ![](.././../../i/s/__upl_ext_1111498489.gif) |
|
|
| Windows XP SP2 XProfan X4... und hier mal was ganz anderes als Profan ... ![](https://www.wuestensand.info/images/CoverFataMorganaklein.jpg) | 04.03.2005 ▲ |
|
|
|
|
![Frank Abbing: 04.03.2005](.././../../i/a/noavatar.gif) Frank Abbing | Hi,
wie, was? Eine Verschwörung? ![](.././../../i/s/_n_shades_smile.gif) Ich kann die Funktion gerne hier posten, wenn sie fertig ist. Hab aber erst noch andere Sachen zu tun. ![](.././../../i/s/__upl_ext_1111498521.gif) |
|
|
| |
|
|
|
![Frank Abbing: 11.03.2005](.././../../i/a/noavatar.gif) Frank Abbing | Hi,
die Funktion ist fertig und heisst SetLineNumbers(). Hier der Code, ich hoffe er ist verständlich: KompilierenMarkierenSepariereninvoke SendMessage,[ebp+8],4100,0,0
mov ecx,eax ; ecx = Anzahl Zeilen
xor edi,edi ; edi = Zeile = 0
.if ecx!=0
mov esi,[ebp+8] ; esi = Handle
mov edx,[ebp+12] ; edx = Startzeilennummer
routea:
push ecx
push edx
push edi
push edi
push [ebp+16]
push OFFSET unwichtig5
push [ebp+8]
invoke dwtoa,edx,addr unwichtig5
call SetItemText
pop edi
pop edx
pop ecx
inc edx
inc edi
cmp ecx,edi
jne routea
xor eax,eax
.endif
|
|
|
| |
|
|