![]() |
Case...of und Ordinal-Typ-Fehler?
Hallo zusammen;
Folgendes Problem:
Delphi-Quellcode:
Dann sagt mir der Compiler:
procedure TForm1.bersichtWoche1Click(Sender: TObject);
var k:integer; tagg,tagh,tagm:string; begin tagg:=inttostr(DayofWeek(Yesterday)); tagg:=tagg+' '; case tagg of '1 ' : tagg:='Sonntag'; '2 ' : tagg:='Montag'; '3 ' : tagg:='Dienstag'; '4 ' : tagg:='Mittwoch'; '5 ' : tagg:='Donnerstag'; '6 ' : tagg:='Freitag'; '7 ' : tagg:='Samstag'; ens; Panel2.caption:=tagg; tagh:=inttostr(DayofWeek(now)); case tagh of '1 ' : tagg:='Sonntag'; '2 ' : tagg:='Montag'; '3 ' : tagg:='Dienstag'; '4 ' : tagg:='Mittwoch'; '5 ' : tagg:='Donnerstag'; '6 ' : tagg:='Freitag'; '7 ' : tagg:='Samstag'; ens; Panel3.caption:=tagg; tagm:=inttostr(DayofWeek(Tomorrow)); case tagm of '1 ' : tagg:='Sonntag'; '2 ' : tagg:='Montag'; '3 ' : tagg:='Dienstag'; '4 ' : tagg:='Mittwoch'; '5 ' : tagg:='Donnerstag'; '6 ' : tagg:='Freitag'; '7 ' : tagg:='Samstag'; ens; Panel4.caption:=tagg; Zitat:
Bitte um Hilfe |
Re: Case...of und Ordinal-Typ-Fehler?
Du kannst nur Zahlen und Enumerationen in Case-Blöcken benutzen. Für Strings steht glaub ich irgendwas in der Codelib.. :gruebel:
|
Re: Case...of und Ordinal-Typ-Fehler?
Wie wärs mit:
Delphi-Quellcode:
:gruebel:
case StrToInt(tagg) of
1 : tagg:='Sonntag'; 2 : tagg:='Montag'; 3 : tagg:='Dienstag'; 4 : tagg:='Mittwoch'; 5 : tagg:='Donnerstag'; 6 : tagg:='Freitag'; 7 : tagg:='Samstag'; ens; |
Re: Case...of und Ordinal-Typ-Fehler?
Zitat:
Delphi-Quellcode:
case DayofWeek(Yesterday) of
1 : tagg:='Sonntag'; 2 : tagg:='Montag'; 3 : tagg:='Dienstag'; 4 : tagg:='Mittwoch'; 5 : tagg:='Donnerstag'; 6 : tagg:='Freitag'; 7 : tagg:='Samstag'; end; |
Re: Case...of und Ordinal-Typ-Fehler?
Zitat:
![]() Aber deine Lösung wird wohl etwas passender sein. ;) |
Re: Case...of und Ordinal-Typ-Fehler?
Danke Muetze1 - scheint so als hätte ichn Blackout gehabt...
:coder2: Naja danke euch allen... |
Re: Case...of und Ordinal-Typ-Fehler?
wie gefällt Dir:
Delphi-Quellcode:
tagm:=inttostr(DayofWeek(Tomorrow));
case tagm [1] of '1' : tagg:='Sonntag'; '2' : tagg:='Montag'; '3' : tagg:='Dienstag'; '4' : tagg:='Mittwoch'; '5' : tagg:='Donnerstag'; '6' : tagg:='Freitag'; '7' : tagg:='Samstag'; end; |
Re: Case...of und Ordinal-Typ-Fehler?
Na sicher nicht besser als Mützes Lösung.
|
Re: Case...of und Ordinal-Typ-Fehler?
Delphi hat doch ein Array mit den Wochentagsnamen in SysUtils.pas, also ist's so wohl am einfachsten:
Delphi-Quellcode:
procedure TForm1.bersichtWoche1Click(Sender: TObject);
begin Panel2.caption := LongDayNames[DayOfWeek(Yesterday)]; Panel3.caption := LongDayNames[DayOfWeek(Now)]; Panel4.caption := LongDayNames[DayOfWeek(Tomorrow)]; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:17 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 by Thomas Breitkreuz