DateTimePicker + StringGrid

DateTimePicker + StringGrid
EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Witam
Mam pytanko jak zrobić taki bajer:
W w wierszu w StringGridzie wyświetlała sie data np: w pierwszym jakaś data w drugim o 1 dzień nastepna itd. i po wybraniu daty z dateTimePickera przechodził do wiersza z tą data?

Form1.StringGrid1.Cells[i,j]:= DateToStr(Form1.DateTimePicker1.Date);

Johny_Morfina
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 5 lat
  • Postów:448
0

data w delphi to liczba rzeczywista, w ktorej czesc calkowita odpowiada numerowi dnia (liczonemu od kiedys tam) a ulamek to czesc dnia jaka juz minela.
Tak ze jak chcesz miec date dnia jutrzejszego to robisz

Kopiuj
  showmessage('jutro bedzie '+dateTostr(date+1));

na podstawie tego i jakiejs petli zrobisz sobie wypelnianie kolejnymi datami komorek w StringGridzie.

A wyszukiwanie:
wybierasz date
odejmujesz od niej date z pierwszej komorki
i otrzymujsze o ile komorek musisz sie przesunac w dol.


EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Oki dzięki bardzo pomogło !!!

Ale mam jeszcze jeden dylemat jak zrobić aby w stringgridzie pojawił sie dzień tygodnia czyli:
Wybieram jakas date i wyswietla mi się poniedziałek, wtorek itp

Dzięki za pomoc

Johny_Morfina
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 5 lat
  • Postów:448
0

chcesz wyswietlic DzienTygodnia, a funkcje w delphi nazywaja sie mniejwiecej po angielsku.

pomysl chwile... :>


EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Wiem:
http://4programmers.net/Delphi/Dayoftheweek

Tylko teraz jak robie coś takiego:

Form1.StringGrid1.Cells[0,1]:= (+DateToStr(p)++DayValues[DayOfTheWeek(p)]+'');

i wywala mi bład. Jestem początkujący może źle coś robie. Gdzie p:=DateTimePicker1.date

Johny_Morfina
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 5 lat
  • Postów:448
0

a jaki blad Ci wyswietla?


EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Access Violation at adres 00465d03.....

EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Może mi ktoś z łaski swojej wyjaśnić co robie nie tak ???

MarkusB
  • Rejestracja:ponad 19 lat
  • Ostatnio:ponad 2 lata
0

Hallo elofura!

Moze w ten sposob:

Kopiuj
        ...
        String WeekDays[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};

        TDateTime p = Now();
        StringGrid1->Cells[1][1] = DateToStr(p) + " " + WeekDays[DayOfWeek(p)];

        ...

Pozdrawiam
Markus


Go Hard Or Go Home
Johny_Morfina
  • Rejestracja:ponad 22 lata
  • Ostatnio:około 5 lat
  • Postów:448
0

na moje oko kod

elofura napisał(a)
Kopiuj
 Form1.StringGrid1.Cells[0,1]:= (''+DateToStr(p)+''+DayValues[DayOfTheWeek(p)]+'');

jest w porzadku

czy jestes pewnien ze blad wyskakuje w tym momencie?


EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Błąd jest taki:
Return Value of function'DayOFTheWeek' might be undefined

nie wiem co jest... :(

MarkusB
  • Rejestracja:ponad 19 lat
  • Ostatnio:ponad 2 lata
0

Hallo elofura!

Tym razem w Delphi:

Kopiuj
procedure TForm1.Button2Click(Sender: TObject);
const
   WeekDays: array[1..] of String = ('Niedziela', 'Poniedzialek', 'Wtorek', 'Sroda', 'Czwartek', 'Piatek', 'Sobota');

var
   p: TDateTime;

begin
   p := Now();
   StringGrid1.Cells[1,1] := DateToStr(p) + '  ' + WeekDays[DayOfWeek(p)];
end;

Pozdrawiam
Markus

edit: kosmetyka


Go Hard Or Go Home
EL
  • Rejestracja:około 18 lat
  • Ostatnio:około 14 lat
0

Dziękuje bardzo !!
"Aby twoje dzieci piękne matki miały" :)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.