안녕하세요
매번 이렇게 도움만 요청하려니 부끄럽군요.--;
하지만 다시 용기를 내서 질문을하겠습니다.
어플리케이션을 개발중인데요.반드시 날짜표시를 yyyy/MM/dd형태로 해줘야하거든요.
어떻게 연구를 하긴했는데 이게 또 반항을 하는겁니다.
DefaultLCID := GetSystemDefaultLCID;
SetLocaleInfo(DefaultLCID, Locale_sdate,'/');
SetLocaleInfo(DefaultLCID, Locale_sshortdate,'yyyy/MM/dd');
GetFormatSettings;
이렇게 하면 형태를 바꿀수 있기는한데 원래 형태가 다른 녀석들은 재실행 해야만 반영이 되거든요. 즉 첫번째 실행시에는 원래의 표시대로 "-" 로 나타난다는 거지요.
처음실행시에도 반영될수 있는 방법이 없는지요.
즐통되십시요.....
> 안녕하세요
> 매번 이렇게 도움만 요청하려니 부끄럽군요.--;
> 하지만 다시 용기를 내서 질문을하겠습니다.
>
> 어플리케이션을 개발중인데요.반드시 날짜표시를 yyyy/MM/dd형태로 해줘야하거든요.
> 어떻게 연구를 하긴했는데 이게 또 반항을 하는겁니다.
>
> DefaultLCID := GetSystemDefaultLCID;
> SetLocaleInfo(DefaultLCID, Locale_sdate,'/');
> SetLocaleInfo(DefaultLCID, Locale_sshortdate,'yyyy/MM/dd');
> GetFormatSettings;
> 이렇게 하면 형태를 바꿀수 있기는한데 원래 형태가 다른 녀석들은 재실행 해야만 반영이 되거든요. 즉 첫번째 실행시에는 원래의 표시대로 "-" 로 나타난다는 거지요.
> 처음실행시에도 반영될수 있는 방법이 없는지요.
> 즐통되십시요.....
>
김영해님 안녕하세요?
많이 나온 이야기라 이미 알고 계신듯 하지만,
아마 제어판의 '국가별 설정등록정보'의 날짜부분이
'YYYY/MM/DD'로 셋팅이 않되어 있지 싶습니다.
아래 처럼 한번 해보시고 안되면 다시 질문올려 주세요.
ShortDateFormat := 'YYYY/MM/DD';
DateSeparator := '/';
Edit1.Text:=DateToStr(StrToDate(Edit1.Text)+1);
그리고, 날짜형식에 관련된 VCL은
델파이 디렉토리sourcertlSyssysutils.pas 참고 하시구요.
그럼.. 즐거운 코딩 하시구요~