zu 1.
Nachträglich geht das durch eine Analyse der vorhandenen Daten durch Aggregatfunktionen (count ,avg,max,min,..)
Bei nicht allzu großem Umfang ginge auch die Gnozalsche ListIcon-Lib (nur Windows) (such mal im englischn Forum), dort
kann man u.a. auch simpel sortiert darstellen.
Ansonst sollte man das alles natürlich von Anfang an vermeiden, wenn man es nicht so braucht.
Die Vorab-Analyse der Daten (wie oben beschrieben) kann man sich meistenteils sparen wenn man
Indizes und/oder
Constraints in die DB mit einbaut. (guck mal sqlite.org). Das Programm muss dann aber "schlau" genug sein mit sowas
umgehen zu können.
zu 2.
Vermutlich willst Du auf den zugehörigen Datensatz in der DB zugreifen. Dazu musst Du beim Füllen des ListiconGadget
drauf achten hinreichend Daten zum genauen Identifizieren der Datenzeile mit darzustellen.
Üblicherweise definiert man pro Tabelle eine Spalte als
eindeutige Index-Spalte. Damit ist das Identifizieren (der Name
Index deutet schon drauf hin) ein Klacks.
Bei SQLITE kannst Du auf die expizite Definition einer solchen Spalte verzichten, weil SQLite sowas "ab Werk" schon einbaut.
Die Spalte
rowid hast Du nie definiert, ist aber trotzdem da und enthält so einen durchlaufenden eindeutigen Index.
Bei anderen DBs ist das nicht unbedingt gegeben und man sowas dann selber einbauen.
Wenn dieser Eintrag (rowid) auch im Listicon mit auftaucht, hast Du so den Haken für die entprechende DB-Zeile.
(und nun kommt bestimmt die Frage auf, wie man einen Index in einem Listicongadget hinterlegen kann ohne das
man den sieht. Die Boardsuche sagt dazu
http://www.purebasic.fr/german/viewtopi ... verstecken )
Ein Update der DB mit dem neuen Wert sähe dann ungefähr so aus
update meinetabelle set wertespalte=neuerwert where rowid =rowid_der_angeklickten_Zeile