ich möchte mir ein kleines Tool schreiben welche meine persönlichen Daten verwalten.
Ich habe auch schon eine Version fast Fertig. Sie bassiert auf die Speicher und Lade Funktionen der VST Komponente.
Das Programm hat noch eine kleinen Fehler. Aber wenn die DB wechst wird es leider auch längern dauern beim Speichern und Laden.
Deshalb habe ich mir überlegt eine Richtige DB zu verwenden. Lazarus bietet dazu ja verschiedene System an.
Da ich kein DB-Server verwenden möchte. Möchte ich gerne die SQL-Lite DB verwenden.
ich habe es auch schon geschafft eine Datenbank Datei anzulegen draus zu lesen und wieder zu speichern. Auch als Baum. Den ich in einer VST-Komponente anzeigen wollte/möchte.
Das klappt auch schon so weit.
Nur mir kam noch einige Ideen und ich weiß nicht so recht wie ich sie einbauen sollte, da ich noch nicht oft mit fertigen Datenbank-System zu tuen hatte.
Also bei der VST-Variante also ohne eine Datenbank hatte ich einfach ein record Definiert:
Code: Alles auswählen
TNotizint = record
// Der Anzeige Text für die VSt
Caption:String;
// Der Text der angezeigt werden soll
Text:TStrings;
// NOch nicht verwendet
id:String;
// Wird gebraucht um zu entscheiden ob ein Plus zeichen vor dem Eintrag
// In der VSt gemacht werden soll
submenu:String;
// Verwendeter Higleiter für SynEdit
HigLeiter:String;
// Erstellungs Datum
CreateDate:TDate;
CreateTime:TTime;
// Zuletzt gelesen
LastReadDate:TDate;
LastReadTime:TTime;
// Zuletzt geändert
LastChangeDate:TDate;
LastChangeTime:TTime;
// Abgerufen
ReadCount:Integer;
// anzahl der Änderungen
ChangeCount:Integer;
// Das Password für den Eintrag
Password:String;
TextPassWord:String;
TextLinkListPassWord:String;
// Bestimmt ob der Text entschlüsselt ist oder nicht
isEnt:Boolean;
// Wenn Linkgs mitangeben werden sollen
LinkList:TStringList;
// Welche Nootbookeseite wahr zuletzt aktiv ?
lastNoteBookIndex:Integer;
// Bestimmt ob dieser Eintrag verändert wurden ist oder nicht
isMod:Boolean;
// Speichert die Gesetzten Sprunmarken in der SynMemo
Bookmars:String;
end;
Bei der "neuen" Version möchte ich jetzt ein SQL-Lite Verwenden.
Im Moment habe ich folgenden Aufbau.
um jetzt einen unter Knoten zu speichern bzw. zu laden. wird geschaut gibt es ein Datensatzt zu id1 die id sind bei mir 10 Stellige Zahlen die zufällig gebildet werden.VstName_Root
id1=text1
id2=text1
id3=text1
id4=text1
Gibt es einen Datensatzt oder eine Tabelle zum Eintrag wird ein + Zeichen gesetzt und beim drauf klicken wird dieser Tabelle geladen.
Dieser Aufbau schien mir richtig für ein Baum zu sein.
Das Problem ist jetzt, wie mache ich weiter ?
mein ziel ist, das ich folgende Datenspeichern kann:
1).Normale Soruce sie sollen in einem TSynEdit da gestellt werden.
2) Einträge sollen verschlüsselt werden können mit RC4
3) Ich möchte Link, Datei listen und sonstige Listen abspeichern können zu einem Eintrag
4) Der User soll seine Eigenen Tabellen definieren können und die Felder bestimmen.
die Frage ist jetzt, wie könnte ich es am besten die Daten da stellen und das Programm aufbauen ?
Ich dachte an folgenden Aufbau:
Links eine VST
rechts eine TPageControl für die einzelne Fehlder.
zu jeden Eintrag sollen noch 10 Standart Informationen gespeichert werden.
die Einträge 1-8 soll nur das Programm ändern nicht der user01) Create Date
02) Crate Time
03) Last Change Date
04) Last Change Time
05) last Read Date
06) Last Read Time
07) ReadCount
08) ChangeCount
09) Anzeige Text im Baum
10) ID
und der Eintrag 10 ist wie schon gesagt eine zufällig stellige ID.
09 Soll vom User bestimmt werden.
Später sollen noch folgende Felder Folgen:
11) Schrift Farbe
12) Schrift Name
13) Schrift Größe
14) Schrift Style
15) Hintergrund Farbe
Damit sollen Einträge Markiert werden können.
etzt möchte ich das der User Entscheidet was er zu den Eintrag speichern möchte:
Meine Frage ist jetzt wie könnte ich am besten die Oberfläche gestalten und die Daten anzeigen ?A) Eine Text Datei. die z.b. mit SynEdit da gestellt werden könnte
B) Eine oder mehre Bin Datei
C) Eine oder mehre Dateiliste
D) Eine oder mehre Linkliste