Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Tstrings ?? (https://www.delphipraxis.net/10913-tstrings.html)

Skyruner2 27. Okt 2003 21:30


Tstrings ??
 
ich sag nur :wiejetzt:

ist dass wie nen array? das help file verstehe ich nicht.

und daher auch net warum hier ein "abstrakter fehler" ist.

Delphi-Quellcode:
var
  ProfileList: Tstrings;
  reg: TRegistry;

procedure TForm1.FormCreate(Sender: TObject);
begin
ProfileList := Tstrings.Create;
                                  {get Avaliable Profiles}
  reg := TRegistry.Create;
  reg.RootKey := HKey_local_machine;
  reg.OpenKey ('SOFTWARE\Skyruner2\FTP_News\Profiles', True);
  reg.GetKeyNames(ProfileList);

                                  {set profiles in selection box}
  ProfileSelection.Items:=ProfileList;

end;
/me ist ein delpi n00b :lol:

Daniel B 27. Okt 2003 21:35

Re: Tstrings ??
 
Hi,

CloseKey(); und ein try..finally-Block einfügen. ;)

RomanK 27. Okt 2003 21:48

Re: Tstrings ??
 
Hoi,
mach aus dem TStrings ein TStringList!!
Dann gehts.
Zitat:

Zitat von Christian Seehase
TStrings als Typ anzugeben, ist in Ordnung, ja sogar sinnvoll, da man dann alle Objekte, deren Typ eine von TStrings abgeleitete Klasse ist, übergeben kann.
Nur eine Instanz von TStrings sollte man nicht erstellen. (Bei entsprechender Einstellung, gibt der Compiler da auch eine Warnung aus)


Skyruner2 27. Okt 2003 22:03

Re: Tstrings ??
 
@Fuckracsism
jo.. jezt gehts :D

@Daniel
damits funktionirt brauch ich die beiden anwiesingen net.. aber ich denkemal das man sie trotydem haben solte??



ssint tstrings den jetzt so was wie ein array??

Christian Seehase 27. Okt 2003 22:04

Re: Tstrings ??
 
Moin Skyruner,

Zitat:

Zitat von Skyruner2
... daher auch net warum hier ein "abstrakter fehler" ist.

TStrings ist eine abstrakte Klasse, dass heisst:
Sie enthält Methoden, die als abstract deklariert wurden.

Bei einer abstrakten Methode wird nur der Kopf im Interface Abschnitt deklariert, sie wird aber nicht im Implementation Abschnitt "mit Leben gefüllt". Dies geschieht erst in abgeleiteten Klassen.

Skyruner2 27. Okt 2003 22:07

Re: Tstrings ??
 
ahh ok! :) dass mach meh sinn als das summer help file :) DANKE!!!!!

Daniel B 27. Okt 2003 22:12

Re: Tstrings ??
 
Zitat:

Zitat von Skyruner2
@Daniel
damits funktionirt brauch ich die beiden anwiesingen net.. aber ich denkemal das man sie trotydem haben solte??

Vollkommen richtig! ;)

Christian Seehase 27. Okt 2003 22:18

Re: Tstrings ??
 
Moin Skyruner,

wenn ich mir den Codeschnipsel aus dem Eingangsposting ansehe:
Es fehlen nicht nur CloseKey und ein try/finally Block, sondern auch noch die Freigabe des Registry Objektes, die Überprüfung, ob das Öffnen des Schlüssels erfolgreich war, denn nur in diesem Falle kann man damit arbeiten, und darf den Key schliessen, ausserdem auch noch ein try/finally Block, um die Freigabe abzusichern.

Stilisiert:

Delphi-Quellcode:
R := TRegistry.Create;
try
  if R.OpenKey(...) then begin
    try
      // mach was mit dem geöffneten Key
    finally
      R.CloseKey;
    end;
  end;
finally
  FreeAndNil(R);
end;

Skyruner2 27. Okt 2003 22:37

Re: Tstrings ??
 
hmm ok...

MUSS dass wirklich sein? lol

um euch man nen overview zu geben:

in dem Programm kann man verschiedene Profile laden, die in der Registy gespeichert sind.
diese Profile kann man dann aus einer Selection box aufrufen.

wenn man den Namen eines profil eintippt welches noch nicht besteht, dann kann man es erstellen (der „Load profile“ button verändert sich in „Create Profile“. - mit hilfe des onChanage events)...


...dass bring mich überings zu einer anderen fage:

wie kann ich einen String mit jedem String in einer String liste vergleichen?

Also so etwas wie:
Delphi-Quellcode:
If not ProfileSelection.Text = {ProfileList.einer-der-included-strings} then
  begin
    LoadButton.caption:=('Create Profile');
    LoadButton.Width:=80;
    reg.CreateKey('ProfileSelection.Text')
  End;

Christian Seehase 27. Okt 2003 22:45

Re: Tstrings ??
 
Moin Skyruner,

Zitat:

Zitat von Skyruner2
...dass bring mich überings zu einer anderen fage:

und damit auch zu einem neuen Thread.

Neue Frage - Neuer Thread.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:53 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz