Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Strin an ShortString zuweisen, wie? (https://www.delphipraxis.net/202464-strin-shortstring-zuweisen-wie.html)

bcvs 7. Nov 2019 08:45

AW: Strin an ShortString zuweisen, wie?
 
Und wieso jetzt noch der Shortstring?

Ich würde so etwas machen:
Delphi-Quellcode:
type
  TRegisteredCommand = class(TObject)
  private
    FMenuName: String;
  public
    property MenuName: string read FMenuName write FMenuName;
  end;

FCmd := TRegisteredCommand.Create;
FCmd.MenuName := FIniFile.ReadString('Command','Menuname','');

Uwe Raabe 7. Nov 2019 08:45

AW: Strin an ShortString zuweisen, wie?
 
Das ist alles doch viel zu kompliziert. Eine Zuweisung von string zu ShortString oder z.B. string[31] und umgekehrt funktioniert aus dem Stand:
Delphi-Quellcode:
program Project598;

{$APPTYPE CONSOLE}

var
  nMenu: string;
  sMenu: string[31];
begin
  nMenu := 'Hello World';
  sMenu := nMenu;
  Assert(nMenu = sMenu);
  sMenu := 'Hello World';
  Assert(nMenu = sMenu);
  nMenu := sMenu;
  Assert(nMenu = sMenu);
end.

cpux86 7. Nov 2019 09:18

AW: Strin an ShortString zuweisen, wie?
 
Zitat:

Zitat von Uwe Raabe (Beitrag 1450906)
Das ist alles doch viel zu kompliziert. Eine Zuweisung von string zu ShortString oder z.B. string[31] und umgekehrt funktioniert aus dem Stand:
Delphi-Quellcode:
program Project598;

{$APPTYPE CONSOLE}

var
  nMenu: string;
  sMenu: string[31];
begin
  nMenu := 'Hello World';
  sMenu := nMenu;
  Assert(nMenu = sMenu);
  sMenu := 'Hello World';
  Assert(nMenu = sMenu);
  nMenu := sMenu;
  Assert(nMenu = sMenu);
end.

Schön wäre das ja, aber da scheint es dann Probleme zu geben, wenn ich an eine Klasseneigenschaft zuweise. FCmd.Menuname ist nach wie vor leer. Wo könnte ich da noch suchen? Steh auf dem Schlauch. Werde aber den obigen Code testen.

Uwe Raabe 7. Nov 2019 09:28

AW: Strin an ShortString zuweisen, wie?
 
Zitat:

Zitat von cpux86 (Beitrag 1450908)
FCmd.Menuname ist nach wie vor leer. Wo könnte ich da noch suchen?

Ich hab jetzt nicht so genau geschaut, aber eventuell überträgst du die Stringlängen nicht (korrekt)?

Wie gesagt, wenn du statt
Delphi-Quellcode:
array[0..31] of AnsiChar
einfach
Delphi-Quellcode:
string[31]
schreiben würdest, dann klappt das auch mit der simplen Zuweisung. Falls nicht, dann zeig doch mal ein minimales Beispiel.

cpux86 7. Nov 2019 10:27

AW: Strin an ShortString zuweisen, wie?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ok, da will ich mal ein Beispiel hoch laden:

Uwe Raabe 7. Nov 2019 10:57

AW: Strin an ShortString zuweisen, wie?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich habe das mal so geändert, wie ich es vorgeschlagen hatte.

cpux86 7. Nov 2019 11:51

AW: Strin an ShortString zuweisen, wie?
 
Super, Danke wie verrückt. Jetzt muss ich das in meiner Anwendung noch so umstellen. :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:51 Uhr.
Seite 2 von 2     12   

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