更改系统日期格式 (100分)

  • 主题发起人 主题发起人 wsm
  • 开始时间 开始时间
控制面板-区域设置-日期
是问这个吗?
 
;是如何在程序中设置系统日期格式
 
SetLocalInfo 请查阅win32 help
给出例子:
setlocalinfo(LOCALE_SYSTEM_DEFAULT,LOCALE_SDATE,'yyyy-M-d');
记住,最后一个参数字符串的大小写敏感
 
shordateformat:='yyyy/mm/dd';
 
winexec('rundll32.exe shell32.dll,Control_RunDLL TimeDate.cpl,,0',9);
用这个函数就可以调出任务栏的日期调整和时间调整的对话框
 
最好不要更改用户的设置拉,自己在程序使用格式Mask就行了,如:
FormatDatatime('yyyy-mm-dd hh:mm:ss',now),当你要strtodatetime时,可以
设置

var CurrencyString: string;
var CurrencyFormat: Byte;
var NegCurrFormat: Byte;
var ThousandSeparator: Char;
var DecimalSeparator: Char;
var CurrencyDecimals: Byte;
var DateSeparator: Char;
var ShortDateFormat: string;
var LongDateFormat: string;
var TimeSeparator: Char;
var TimeAMString: string;
var TimePMString: string;
var ShortTimeFormat: string;

var LongTimeFormat: string;
var ShortMonthNames: array[1..12] of string;
var LongMonthNames: array[1..12] of string;
var ShortDayNames: array[1..7] of string;
var LongDayNames: array[1..7] of string;

var SysLocale: TSysLocale;
var EraNames: array[1..7] of string;
var EraYearOffsets: array[1..7] of Integer;
var TwoDigitYearCenturyWindow: Word = 50;

var TListSeparator: Char;
 
使用formatdatetime
example:
var m:tdatetime;
begin
m:=now;
label1.caption:=formatdatetime('YYYY"年"MMMMDD"日"',m );
//或者:
label1.caption:=formatdatetime('YYYY"年"MMDD"日"',m);
end;
 
多人接受答案了。
 
后退
顶部