Foro | | | | | Um mein Problema a erläutern, zuerst una Bildchen
Wenn nun el en el Ejemplo betonte Línea gelöscht oder en el otro Anzeige kopiert se, stimmt el Rechnungsverlauf no mehr. - ¿Cómo se puede Yo lösen, dass el Anzeige mejorado, also aktualisiert ? - Lo debería ir, pero yo habe absolut no Vorstellung de una Anfang - wer hilft ? El Expediente (u otros) se como CSV-Expediente gespeichert como ellos en el Listview.dll de Franco adecuado se. Für Freaks: Man beachte el Datumsanzeige ! |
| | | | |
| | Michael Wodrich | Auslesen el Línea Valor ermitteln Dann - löschen (Valor abziehen) - mover (hier Valor löschen, hay addieren)
Verständlich?
Wird una feines Tool.
Schöne Grüße Michael Wodrich
Yo weiß no, si Es usted un Message en Lösch- oder Drag&Drop-Tätigkeit erhälst. Si el no Fall es, Luego se unten una Knöpfchen Löschen o Verschieben el Prozess en Gang conjunto. |
| | | Programmieren, das spannendste Detektivspiel der Welt. | 30.12.2007 ▲ |
| |
| | | @Michael Soweit war Yo auch ya - Den Valor el gelöschten (kopierten) Línea vom letzten Gesamtwert abziehen y (si kopiert) en el neuen Anzeige zuzählen. Soweit, tan bueno. El otro Einträge son aber entonces no aktualisiert worden. Wenn Yo z. B. 5 Einträge tener y cada es anders en el Valor y yo lösche el zweiten Eintrag, stimmt el Rechnungsverlauf en el 3. y 4. Eintrag no mehr. Der Endwert en el 5. Eintrag wäre entonces otra vez correcto y como liegt mein Problema |
| | | | |
| | Thomas Freier | Yo sería el Beträge como +999 oder -999 einfügen y speichern sin Zwischenstand. Wenn el Istbetrag, el sí gross adecuado se, no reicht, el Werte el letzten Spalte beim Mostrar ausrechnen dejar. Beim Datum könntest du por Prüfen una Vordatieren verhindern. Wird una Buchung verändert, simplemente el letzte Spalte neu berechnen dejar. |
| | | | |
| | Dieter Zornow | ¡Hola Horst,
Yo wuerde ueber una Bucle el kompletten Werte neu berechnen.
Gruss de Bangkok
Dieter |
| | | Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2 | 31.12.2007 ▲ |
| |
| | | @Dieter
Yo wuerde ueber una Bucle el kompletten Werte neu berechnen.
Den Gedanken Tuve ya, aber como ??? -
@Thomas Que el Datumsanzeige hast Usted falso verstanden. Auf Wunsch uno individual Herren Yo el automatische Datum de el Versión 1 (MoneyGuard) así umgestaltet, dass ahora jede Datumseingabe entweder encima el Kalendertool de Windows, con eigenen Eingaben oder automáticamente posible es. Un Kontrollfunktion se entonces Termine para Zahlungen oder Eingänge informe. -
Mein Problema es después de como antes el Aktualisierung el Rechnungswege.
@Franco Kann lo ser dass Usted Listview_Funktionen.inc bajo XProfan-11 angleichen musst oder tener Yo una veraltete Versión el Incluir-Expediente ? |
| | | | |
| | Frank Abbing |
Kann lo ser dass Usted Listview_Funktionen.inc bajo XProfan-11 angleichen musst oder tener Yo una veraltete Versión el Incluir-Expediente ?
Inwiefern? |
| | | | |
| | Thomas Freier | Nur una rápidamente gestricktes Muster de uno otro Anwendung: KompilierenMarcaSeparación~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~Franks ListView
Declare lvdll&,bereich#,bytes&
Declare handle&,indexline&,status&,x&,xn1!,xn2!
vdll&=usedll(bvr/Listview.dll)
$I Listview_Funktionen.inc
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Mein Konto ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Proc Rechne_MeinKonto
DIM bereich#,1024
Decimals 2
GetItemText(listview_B&,bereich#,2,0)
text$=String$(bereich#,0)
SetItemText(listview_B&,addr(text$),3,0)
WhileLoop GetLines(listview_B&)
GetItemText(listview_B&,bereich#,3,(&Loop-1))
xn1!=val(String$(bereich#,0))
GetItemText(listview_B&,bereich#,2,&Loop)
xn2!=val(String$(bereich#,0))
text$= str$(xn1! + xn2!)
SetItemText(listview_B&,addr(text$),3,&Loop)
EndWhile
AddItemValues(listview_B&,2,bereich#,2)
SetText num33&,Kontostand: + String$(bereich#,0)
Dispose bereich#
EndProc
Proc Konto_Liste
Def @Waitmessage(0) !USER32,WaitMessage
Declare num33&,Boot_dlg&,listview_B&,BP_but1&,BP_but2&,BP_but3&,BP_but4&,BP_but5&,BP_but6&
Boot_dlg& = @Create(Window,%hwnd, Mein Konto ,50,24,896,680)
Zeile neu
BP_but1& = CreateButton(Boot_dlg&,Neu,40,620,80,25)
Zeile löschen
BP_but2& = CreateButton(Boot_dlg&,Löschen,160,620,80,25)
Liste speichern
BP_but5& = CreateButton(Boot_dlg&,Speichern,650,620,80,26)
Ende Button
BP_but4& = CreateButton(Boot_dlg&,Ende,740,620,80,25)
num33&=@Control(STATIC,,$50000080,350,624,160,13,Boot_dlg&,1,%hinstance,$1000)
SetFont num33&,lfont&
listview_B&=CreateListView(Boot_dlg&,%hinstance,Rgb(0,0,0),Rgb(250,250,250),-1,$21)
InsertColumn listview_B&,Eingabe / Ausgabe,490,0
InsertColumn listview_B&,Datum,100,1
InsertColumn listview_B&,Betrag,100,1
InsertColumn listview_B&,Stand,100,1
text$=MeinKonto.csv
bytes&=@FileSize(text$)
If bytes&>0
Dim bereich#,bytes&
ReadFileQuick(addr(text$),bereich#,0,bytes&)
CsvToListview(listview_B&,bereich#,bytes&,4)
Dispose bereich#
EndIf
SetFont listview_B&,lfont&
AutoSortListview listview_B&,1,1,1
ShowListView(listview_B&,32,22,820,560)
Rechne_MeinKonto
InitMessages(Boot_dlg&)
EnableEdits(listview_B&,1)
@SetFocus(Boot_dlg&)
Usecursor 0
While %Menuitem<>-2
@Waitmessage()
x&=GetVar(0)
IfNot x&
Rechne_MeinKonto
EndIf
If GetFocus(BP_but2&)
x&=GetSelectedLine(listview_B&) Nummer der markierten Zeile abfragen
case x& > 0 : Sendmessage(listview_B&,$1008,x&,0) Zeile löschen
ElseIf GetFocus(BP_but1&) Erzeugt eine neue Zeile, scrollt dort hin
und selektiert sie (alle anderen werden deselektiert)
SetItem listview_B&,,,
x&=GetLines(listview_B&)
SelectLine(listview_B&,(x&-1),1)
ElseIf GetFocus(BP_but5&)
text$=MeinKonto.csv
x&=GetNeededMemory(listview_B&,1)
Dim bereich#,x&
x&=ListviewToCsv(listview_B&,bereich#,0,0)
x&=WriteFileQuick(addr(text$),bereich#,0,x&)
Dispose bereich#
MessageBox Liste gespeichert...,Information,$40040
@SetFocus(Boot_dlg&)
ElseIf GetFocus(BP_but4&)
BREAK
EndIf
Usecursor 0
Wend
@DestroyWindow(Boot_dlg&)
Endproc
################################## H A U P T T E I L ####################################
WINDOWSTYLE 512+8+2
WINDOW 1,1-%maxx,710
SETTRUECOLOR 1
Cls RGB(230,230,200)
USEFONT Arial,16,0,0,0,0
SETDIALOGFONT 1
Declare text$
var lfont& = @Create(Font,Arial,15,0,0,0,0)
Konto_Liste
freedll lvdll&
DeleteObject lfont&
$I Listview_Dispose.inc
End
CSV-Anhänge mag él no. Erzeuge con el Inhalt una : MeinKonto.csv KompilierenMarcaSeparación |
| | | | |
| | | @Franco
Inwiefern?
Mit el Versión 11 meckert XProfan en Sub... en Deiner listview_funktionen.inc - Roland ha dazu extra una Inc-Expediente mitgeliefert para alte Programas profalt.inc para alte Profano-Programas, el no Operatoren benutzen. Daher pensamiento Yo, dass Usted el Sub en Deiner INC auch modernisieren müsstest |
| | | | |
| | | @Thomas KompilierenMarcaSeparaciónGetItemText(etatO&,bereich#,3,2)
teil$=String$(bereich#,0)
print teil$
GetItemText(etatO&,bereich#,4,(anzO%-1))
end$=String$(bereich#,0)
print end$
teil!=VAL(teil$)
end!=VAL(end$)
end!=(end!-teil!)
betragO$=STR$(end!)
print betragO$
Sendmessage(etatO&,$1008,2,0)
OBEN_AKTIV Hier wird die Anzeige in einer eigenen Procedur aktu rt
So sieht mein Probecode de y yo denke, dass unterm Strich el herauskommt, qué me vorschwebt. Printen tut él ya veces el, Yo voluntad. Jetzt sólo aún en el Bucle y luego neu abspeichern. (Wunder Usted nocht en grossen O - como I, con zwei Mostrar arbeite, tener Yo el Variables con Oben y Unten getrennt) |
| | | | |
| | Frank Abbing |
Daher pensamiento Yo, dass Usted el Sub en Deiner INC auch modernisieren müsstest
Natürlich, con el neuen Versión hay entonces una geänderte Inc. Ist sowieso erheblich schlanker geworden, como Yo sechs Procs y Defs ahora direkt en el Dll integriert habe. |
| | | | |
| | | @Franco
[offtopic] Nun verrate uns doch veces, wer el Hübsche en Deinem Atavar es ? - Su Enkelin oder... ? [/offtopic] |
| | | | |
|
RespuestaThemeninformationenDieses Thema ha 5 subscriber: |