| |
|
|
Bernd Kaiser | allô Listview-Amis,
je kämpfe avec folgendem Problem:
dans meinem Programme soll avec deux Listviews gearbeitet volonté. dans einem unsichtbaren Listview (Listview2&) stehen alle verfügbaren données et de là devoir ensuite Zeilen dans cela sichtbare Listview (Lisstview1&) kopiert volonté. mon Problem liegt y, dass je zwar beide Listviews erzeugt habe, sobald mais ensuite qui Suchfunktion dans Listview2& chercher soll venez qui annonce, dass cet Variable pas défini ist.
mon Vermutung ist, dass je chez qui Deklaration de Listview1& cela Listview2& wieder zerstöre. ici la fois qui Code qui betreffenden Stelle: KompilierenMarqueSéparation
PROC ...
REM Artikeldaten in ListView2 einlesen
text$="SQL.DAT" SQL.DAT enthält die Ergebnisse des SQL-Befehls
bytes&=@FileSize(text$) Speicherbereich festlegen
If bytes&>0
Dim bereich#,bytes&
x&=MixRGBs(GetSysColor(15),$00ffffff)
listview2&=CreateListView(%hwnd,%hinstance,0,x&,-1,$31) ListView2 = Liste aller Artikel
ReadFileQuick(addr(text$),bereich#,0,bytes&)
Spalten&=SetColumnsFromMem(listview2&,bereich#,addr(y&))
CsvToListview(listview2&,(bereich#+y&),(bytes&-y&),Spalten&)
Dispose bereich#
EndIf
Spaltentitel umbenennen
Dim Bereich#,256
1. Spalte
text$="Lief.-Nr"
String Bereich#,0=text$
x&=SetColumnName(listview2&,Bereich#,(0))
2. Spalte
text$="Lieferant"
String Bereich#,0=text$
x&=SetColumnName(listview2&,Bereich#,(1))
Dispose Bereich#
Spaltentitel umbenennen
Die Breite der drei ersten Spalten korrigieren
SetColumnWidth(listview2&,0,75)
SetColumnWidth(listview2&,1,250)
SetColumnWidth(listview2&,2,0) diese Spalte wird zuviel aus SQL.DAT geholt, daher auf Breite=0 gesetzt, damit sie nicht zu sehen ist
Die Breite der drei ersten Spalten korregieren
Spalten des Listviews sortierbar machen
AutoSortListview listview2&,2,1 macht die Spalten sortierbar durch Klick auf den Spaltentitel
Spalten des Listviews sortierbar machen
REM Artikeldaten in ListView2 einlesen
REM Das ListView für den Hauptbildschirm anzeigen (noch leer)
rem x&=MixRGBs(GetSysColor(15),$00ffffff)
listview1&=CreateListView(%hwnd,%hinstance,0,-1,-1,$25)
ShowListView(listview1&,30,100,560,250) Anzeige des Listviews
REM Das ListView für den Hauptbildschirm anzeigen (noch leer)
EndProc
Proc Button4_OnClick
REM nach Artikelnummer in Listview2& suchen
DECLARE such$
Feld ist leer, dann sofort ListView2 aufrufen, um dort zu suchen
print @GetText$(ArtNrSearch&)
print LEN(TRIM$(@GetText$(ArtNrSearch&)))
If @Equ(LEN(TRIM$(@GetText$(ArtNrSearch&))),0) nichts eingegeben
@Messagebox("Keine Artikel-Nr. eingegeben","nach Artikel-Nr. suchen",0)
ELSE Feld ist gefüllt, dann per Suchfunktion SearchText in ListView2 nach dieser Nummer suchen
such$=ArtNrSearch&
y&=SearchText(listview2&,0,GetLines(listview&),0,addr(such$),10,addr(x&))
Case (y&<>-1):Print "Gefunden, Zeile "+Str$(y&)+" / Spalte "+Str$(x&)
ENDIF
SetText ArtNrSearch&,"" Feldinhalt nach Rückkehr wieder löschen
ref='./../../references-fonction/XProfan/endproc/'>ENDPROC
dans froher Erwartung eurer Aider.
Salut Bernd |
|
|
| Win98SE, Profan 7.5 -------------------------------------------------- Programmieren ist wie küssen: Man kann darüber reden, man kann es beschreiben, aber man weiß erst, was es bedeutet, wenn man es getan hat. | 20.07.2005 ▲ |
|
|
|
|
| Hm - alors cela Codepiece utilise Je ne so viel um cela Problem erkennen trop peut - là fehlt arrêt qui Zusammenhang.
Las doch la fois Dein Prog vom XPSE überprüfen...
et si cela aussi encore pas hilft - nutze doch la fois den XPSE {$Debug} Compilerschalter - je denke avec cela peut sich Derartiges vite trouver. [...]
Salve, iF. |
|
|
| |
|
|
|
Frank Abbing | Hi,
scheint oui ne...aucune Listview Problem trop son. plutôt eines, cela dans deinem Code entsteht. Wahrscheinlich la hâte dus dans qui Zwischenzeit déjà behoben. |
|
|
| |
|
|
|
Bernd Kaiser | oui, qui Solution c'est moi aujourd'hui au cours de qui Bahnfahrt eingefallen. qui Variable ListView2& muss naturellement global deklariert volonté.
on lernt arrêt seulement aus Fehlern.
Salut Bernd |
|
|
| Win98SE, Profan 7.5 -------------------------------------------------- Programmieren ist wie küssen: Man kann darüber reden, man kann es beschreiben, aber man weiß erst, was es bedeutet, wenn man es getan hat. | 21.07.2005 ▲ |
|
|
|
|
Frank Abbing | là la hâte du droite |
|
|
| |
|
|
|
Michael Wodrich | je serait avec qui Editor-Suchfunktion aussi la fois pour Listview& chercher laisser.
Ist cela korrekt, ou bien fehlt là à einigen se mettre qui 2?
belle Grüße Michael Wodrich |
|
|
| Programmieren, das spannendste Detektivspiel der Welt. | 23.07.2005 ▲ |
|
|
|