Zum Inhalt springen

mehrspaltige listfelder


devil

Empfohlene Beiträge

naja, in fast jedem programm findet man sie - mehrspaltige listenfelder. die haben eine überschrift mit der man meistens nach der spalte sortieren kann.

im explorer die dateien im outlook die mails etc...

wie kann ich sowas mit borland builder5 in mein programm einbinden? muss ich dafür externe komponenten benutzten? wenn ja wo bekomme ich diese?

danke jetzt schonmal

Link zu diesem Kommentar
Auf anderen Seiten teilen

oh cool.... danke, ich hatte mit dieser komponente schon rumprobiert aber jetzt nach dem tipp habe ich das auch so hinbekommen wie ich es wollte.

nur wie ich items dynamisch adde, anspreche etc. ist mir noch nicht ganz klar - hat da jemand evtl. einen rat wo es dazu online mehr infos/beispiele gibt als in der borland hilfe?

danke

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich weiß nicht, ob es das ist, was Du suchst aber:

Du schnappst Dir erstmal eine Zeigervariable vom Typ TListItem.

TListItem *newline;

Nun soll es auf eine neue Zeile im TListView zeigen, also:

newline = myListView -> Items -> Add ();

Und als letztes füllst Du die neue Zeile mit Inhalt:

newline -> Caption = "Hallo"

newline -> SubItems -> Add ( "Welt!" );

// Weitere unterkategorien...

HTH

Jan

Link zu diesem Kommentar
Auf anderen Seiten teilen

aha... ok danke, das bringt mich schon mal weiter.

nun zum nächsten punkt :) - die normalen listfelder können mit -items->savetofile und items->loadfromfile gelesen bzw. gesichert werden - gibt es diese möglichkeit auch für die tlistview?

*nerv* ich weiss :)

Link zu diesem Kommentar
Auf anderen Seiten teilen

Naja, schau doch einfach in der Hilfe nach. Mehr kann ich auch nicht tun. Ich habe kurz geschaut und im ersten Moment habe ich kein SaveToFile / LoadFromFile gefunden. Ich benutze zwar kein BCB5 aber ich glaube nicht, daß Borland es dort eingeführt hat. Bei TListBox geht LoadFromFile ja über die Eigenschaft Items, was vom TStrings ist. TStrings bringt LoadFromFile mit. Aber bei TListView sind Items nicht vom Typ TStrings. Ich fürchte Du mußt Dir selber eine Load-/Save-Funktion schreiben.

HTH

Jan

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich nehme an, Du hast in der Hilfe nachgeschaut, oder? Wenn nicht, dann mach' es doch einfach.

Aber ich glaube nicht, daß man alles auf einmal einlesen/auslesen kann. Aber das macht (fast) nichts, denn Borland stellt alles zur Verfügung was man braucht. Zum Schreiben in eine Datei:

Laß einfach eine for-Schleife von 0 bis Count-1 (zu finden unter TListItems) laufen. In der Liest Du von das Array von Item aus und schreibst sie in eine Datei.

Zum Lesen denkst Du Dir irgendein sinnvolles Format aus und liest bis zum Dateiende alle Daten ein und fügst sie, wie oben beschrieben, in TListView ein.

HTH

Jan

Link zu diesem Kommentar
Auf anderen Seiten teilen

Man sollte im Sinne von C++ das ganze so machen:

Von TListItems eine eigene Klasse ableiten und eine Serialize-Funktion hinzufügen und dann nachher darf jedes Objekt sich selbst serialisieren, bzw. speichern und laden. Sollten keine Referenzen drin sein und die Elementgrößen Standardgrößen haben, dann wäres es sogar möglich einfach zu casten.

Weil Du aber meintest Borland:

Gibt es da nicht auch sowas wie CObjects & CArchive bei M$? Wenn es TObjects und TArchive gibt, dann sollte man die Items davon ableiten, weil diese ein halbautomatisches Serialize() für Standard-Elemente haben müßte. Man schiebt die dann ganz einfach und bequem in das Archive-Object über die Operatoren << und >> von & in die Variablen des Listen-Objects beim Serialize() (was man auch wieder überschreiben muß).

Damit Du das besser siehst, was ich meine ein kurzes Beispiel von der MSDN:


// example for CObject::Serialize
void CItem::Serialize( CArchive& ar )
{
CObject::Serialize( ar );
if( ar.IsStoring() )
ar << m_years;
else
ar >> m_years;
}
[/PHP]

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...