Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wochentag bei PageControl den entsprechenden TabSheet anzeie (https://www.delphipraxis.net/14493-wochentag-bei-pagecontrol-den-entsprechenden-tabsheet-anzeie.html)

steve-allround 10. Jan 2004 14:01


Wochentag bei PageControl den entsprechenden TabSheet anzeie
 
Hy...
Habe ein PageControl mit TabSheet von Montag bis Sontag und noch 3 weitere TabSheet's.
JEtzt möchte ich den entsprechenden Wochentag anzeigen lassen.

z.B. heute ist Freitag...da soll das TabSheet Freitag am anfang des startes angezeigt werden.

Ich bin totaler Anfänger, deshalb sagt mir bitte wo ich den Code eintragen soll und die er lautet.

Vielen Dank

Luckie 10. Jan 2004 14:18

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Wenn du D6 hast, dann kuck dir mal die Funktion DayOfTheWeek an.
Delphi-Quellcode:
PageControl1.ActivePageIndex := DayOfWeek(now)-1;

steve-allround 10. Jan 2004 14:32

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Ich leider ein totaler Anfänger. Habe mir es angeschaut und nicht kapiert. wo soll ich den Quellcode eintragen? wenn ich den NAmen der versch. TabSheets mit tbs_1 u.s.w. benannt habe..

Bitte helft mir??????????

scp 10. Jan 2004 14:50

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Am besten du setzt is ins OnCreate der Form:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
  PageControl1.ActivePageIndex := DayOfWeek(now)-1;
end;
Übrigens: Da du die Woche mit Montag beginnst, musst du DayOfTheWeek() statt DayOfWeek() benutzen, da DayOfWeek() beim zählen mit Sonntag anfängt.

Delphi-Quellcode:
uses
  DateUtils;

//...

procedure TForm1.FormCreate(Sender: TObject);
begin
  PageControl1.ActivePageIndex := DayOfTheWeek(now)-1;
end;

kiar 10. Jan 2004 15:01

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
hallo scp,

wo ist fkt dayoftheweek, ab welcher version ist die verfügbar, bei delphi 5 prof nicht.

r_kerber 10. Jan 2004 15:06

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Dann schau mal nach DayOfWeek. Die gibt's mindestens schon seit D3. Aber:
Zitat:

Zitat von OH von Delphi 7
DayOfWeek ist nicht mit dem ISO 8601-Standard konform, in dem Montag als der erste Tag der Woche definiert wird. Die Funktion DayOfTheWeek stimmt mit dem ISO 8601-Standard überein.


kiar 10. Jan 2004 15:23

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
hallo rainer, das beantwortet aber nicht meine frage .
dayofweek kenne ich bloß dayoftheweek nicht.

raik

Sharky 10. Jan 2004 15:26

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Zitat:

Zitat von kiar
...dayofweek kenne ich bloß dayoftheweek nicht....

Ist meines Wissens seit D6 vorhanden.

kiar 10. Jan 2004 15:27

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
danke sharky,

das nenn ich eine beanwortung der frage :thuimb:

raik

r_kerber 10. Jan 2004 15:35

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Zitat:

Zitat von kiar
das beantwortet aber nicht meine frage .

Ich hätte Dir nur sagen können, das es diese bei D7 gibt aber bei D3 noch nicht. Wollte ja auch eine Alternative aufzeigen.
Nachtrag: bei D6 ist sie auch dabei. Wie's bei D4 und D5 aussieht weiß ich nicht. D5 kann ich am Montag nachschauen. Oder ich krame mal meie alten Installations-CD's raus. Da war die OH normal lesbar mit drauf.

steve-allround 10. Jan 2004 15:38

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Wie soll ich dann die TabSheets benennen?

Steve

kiar 10. Jan 2004 15:38

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
kein problem rainer, habe dich schon richtig verstanden.

raik

delphi 5 habe ich selber, da ist sie nicht dabei

steve-allround 10. Jan 2004 15:40

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Hallooo???

Wie soll ich jetzt die TabSheets benennen? Geht es auch, wenn man noch mehr auser nur Montag bis Freitag TabSheets drin hat?
PageControl habe ich Woche benannt.

Sharky 10. Jan 2004 15:45

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Hai steve-allround,

der Name der TabSheets ist egal da in den Beispielen über den TabIndex (bei 0 beginnend) auf die Tabs zugegriffen wird.
Ergo kannst Du auch noch mehr Tabs haben. Vorausgesetzt das die mit den Wochentagen "an einem Sück" sind (also ohne andere Tags dazwichen.

steve-allround 10. Jan 2004 15:49

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Liste der Anhänge anzeigen (Anzahl: 1)
Danke aber es funktioniert nicht...
ich zeige mal....

Bild wie es aussieht in der Anlage....

Quelltext

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
  var
  sExePath: string;
begin
PageControl1.ActivePageIndex := DayOfTheWeek(now)-1;




sExePath := ExtractFilePath(Application.ExeName);

 MediaPlayer1.FileName:=sExePath + 'dll/vorspann.wma';
MediaPlayer1.open;
MediaPlayer1.Play;


  {Jahr}
{Speichern}
memo13.Lines.LoadFromFile(sExePath + 'settings/jahr1.dll');
u.s.w.

Sharky 10. Jan 2004 15:57

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Versuche es mal wenn Du dies: PageControl1.ActivePageIndex := DayOfTheWeek(now)-1; in das Formaktivate Ereigniss packst.

Und was genau geht denn nicht?

steve-allround 10. Jan 2004 16:01

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Der Wochentag wird nicht angezeigt....
Also es bleibt immer der geöffnet, den ich zuletzt offen hatte...
kann ich dir mal den completten Ordner per Mail schciken?

Luckie 10. Jan 2004 16:08

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Ich habe im Beispeil Code auch DayOfWeek benutzt und nicht wie du DayOfTheWeek. Kuck doch einfach mal, was DayOfTheWeek zurückgubt:
Delphi-Quellcode:
ShowMessage(IntToStr(DayOfTheWeek(now)-1));
Oder eben DayOfWeek.

steve-allround 10. Jan 2004 16:12

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Bei den heutigen Tag sagt er mir 5

aber es wird nie der richtige TabSheet angezeigt.

kiar 10. Jan 2004 16:17

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
haben wir heute nicht sonnabend, dann müßte bei dayoftheweek eine 6 sein, oder?

ok, ich habe die -1 übersehen :shock:

raik

kiar 10. Jan 2004 16:26

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
so sollte der aktulle index erreicht sein

Delphi-Quellcode:
PageControl1.Pages[DAyofweek(now)-1]

kiar 10. Jan 2004 16:45

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
so funktioniert es mit dayofweek:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);

var Tage : array [1..7] of string;
       i : integer;
begin
     tage[1]:= 'Montag';
     tage[2]:= 'Dienstag';
     tage[3]:= 'Mittwoch';
     tage[4]:= 'Donnerstag';
     tage[5]:= 'Freitag';
     tage[6]:= 'Sonnabend';
     tage[7]:= 'Sonntag';
     pagecontrol1.Pages[Dayofweek(now)-1];
        for i:= 1 to 7 do
            pagecontrol1.Pages[i-1].Caption:=tage[i];
         
end;
hoffe es hilft.

raik

scp 11. Jan 2004 01:40

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Zitat:

Zitat von kiar
so funktioniert es mit dayofweek:
...

Na dann guck mal heute. Jetzt zeigt er dir ne Exception oder so, weil Sonntag 0 (null) und nicht 7 ist.

kiar 11. Jan 2004 11:06

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
bei mir wird sonntag angezeigt :gruebel:

scp 11. Jan 2004 14:24

Re: Wochentag bei PageControl den entsprechenden TabSheet an
 
Hmmm... Dann hat sich das wohl von Delphi 5 auf 6 geändert.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:22 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