AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Dynamische Stringlisten

Offene Frage von "Julian W."
Ein Thema von Julian W. · begonnen am 8. Dez 2007 · letzter Beitrag vom 14. Dez 2007
Antwort Antwort
Julian W.

Registriert seit: 8. Nov 2006
25 Beiträge
 
#1

Dynamische Stringlisten

  Alt 8. Dez 2007, 19:36
Hallo!
Ich bin gerade dabei einen kleinen Netzwerkchat zu Programmieren. Funktioniert auch soweit ganz prima, ich möchte allerdings auch einen Privatchat einbauen also p2p. Dafür benutze ich Tabs und muss für jeden neuen Tab auch irgendwie eine eigene Stringlist und einen String für den Usernamen erzeugen. Wie sollte ich das am Besten anstellen? Ich habe mich schon informiert und habe herrausgefunden, dass es in etwa so aussehen muss:
Delphi-Quellcode:
type
  TMeineKlasse class(TComponent)
    x : Integer;
  end;
...
var
  MeineKlasse : TMeineKlasse;
begin
...
  MeineKlasse := TMeineKlasse.Create(nil);
...
end;
und ich dann mit einer Tlist die Zeiger verwalten muss. Nur komme ich damit überhaupt nicht klar.. Ich weiß nicht wie ich mir das mit der TList vorstellen muss und auch immernoch nicht, wie ich die Klasse dann dynamisch erzeuge.. Ich hoffe ich habe mein Problem einigermaßen verständlich geschildert und mir kann jemand helfen
Mfg Julian
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Dynamische Stringlisten

  Alt 9. Dez 2007, 00:26
Wie wäre es denn, wenn du dir eine Frame zusammenbaust und diese hält dann die Stringlist etc. Dann haste soweit alles fertig programmiert, die Komponenten auf jedem Tab sind auch schon fertig programmiert. Du musst halt nur für jeden neuen Tab einmalig eine Frame instanziieren und auf den neuen Tab legen.
  Mit Zitat antworten Zitat
Julian W.

Registriert seit: 8. Nov 2006
25 Beiträge
 
#3

Re: Dynamische Stringlisten

  Alt 9. Dez 2007, 15:15
Mhm, da habe ich noch garnicht drüber nachgedacht... Trotzdem würd ichs gerne erst einmal anders probieren, da ich solche probleme schon öfters hatte und mir dann immer mit irgendwelchen workarounds geholfen habe... Trotzdem vielen vielen Dank für deine schnelle Antwort!!
LG Julian
  Mit Zitat antworten Zitat
deep_thought

Registriert seit: 9. Nov 2007
22 Beiträge
 
#4

Re: Dynamische Stringlisten

  Alt 9. Dez 2007, 21:31
ansonsten einfach so:
Delphi-Quellcode:
var chatlisten: array of TStringlist;

...

stelength(chatlisten,length(chatlisten)+1);
chatlisten[length(chatlisten)-1]:= TStringlist.create(self);

...

for i:=0 to length(chatlisten)-1 do
 chatlisten[i].free;
setlength(chatlisten,0);
... also ich hoffe, das klar ist, wie's gemeint ist ... irgendwo musste dir halt noch merken, welcher chat zu welcher stringlist gehört ...

mfg deep_thought
  Mit Zitat antworten Zitat
guidok

Registriert seit: 28. Jun 2007
417 Beiträge
 
#5

Re: Dynamische Stringlisten

  Alt 10. Dez 2007, 07:43
Zitat:
... irgendwo musste dir halt noch merken, welcher chat zu welcher stringlist gehört ...
oder du ergänzt den vorstehenden Code

Delphi-Quellcode:
type
  TChatliste = record
    Username: String;
    Liste: TStringList;
  end;

  TChatlisten: array of TChatliste;

var
  Chatlisten: TChatlisten;
...
  SetLength(Chatlisten, DieAnzahl); //Anzahl der Chatlisten, wie schon im Beitrag oben
  Chatlisten[i].Username := 'Ein Name'; //Der Name des Chatpartners
  Chatlisten[i].Liste := TStringlist.Create; //Erzeugen der Stringliste
Das ist jetzt eine einfache Variante. Du kannst das natürlich alles in eine Klasse verpacken und die passenden Methoden zum Anfügen, Auslesen, Löschen, Suchen usw. der einzelnen Chats mit einbauen.
  Mit Zitat antworten Zitat
Muetze1
(Gast)

n/a Beiträge
 
#6

Re: Dynamische Stringlisten

  Alt 10. Dez 2007, 09:35
Warum merkst du dir nicht die Tabsheet Instanz in dem Record? Damit ist die Zuordnung leichter.

Aber grundsätzlich finde ich es ein schlechter Ansatz:

a) Verwendung eines dynamischen Arrays
b) Keine 1:1 Zuordnung der Userdaten zu dem TabSheet

Mit einer Frame wäre dies nicht passiert...
  Mit Zitat antworten Zitat
Julian W.

Registriert seit: 8. Nov 2006
25 Beiträge
 
#7

Re: Dynamische Stringlisten

  Alt 14. Dez 2007, 18:28
Vielen vielen Dank für eure Antworten!!
Habe es umgesetzt, wie es guidok vorgeschlagen hat und es klappt alles prima!! Vielen Dank nochmal! Weiß jemand zufällig, wie man Tabs hervorheben kann? ALso einfach einen Tab in einer anderen Farbe oder sogar einen Tab blinken lassen? Ist jetzt nicht soo wichtig, aber wenn es jemand weiß wäre eine Antwort schön!

Viele liebe Grüße und happy x-mas schonmal
Julian
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz