| bilbeyi | 10.12.2004 - 13:24:55 |
| Delphi ile windows'un bölgesel ayarlarını değiştirmeyi nasıl yapabilirim ?
mesela ondalık ayıracı virgül (,) yerine nokta (.) yapmak istiyorum | |
| TRSoft | 10.12.2004 - 16:18:36 |
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 ListSeparator: Char; SysUtils uniti içinde örnek olarak THOUSANDSEPARATOR:='.';
DecimalSeparator:=','; | |
| bilbeyi | 10.12.2004 - 17:27:43 |
| denedim ama bir değişiklik olmadı.
her hangi bir form üzerinde denememim bir farkı olurmu ? | |
| TRSoft | 10.12.2004 - 17:54:06 |
| Ben yukarıda yanlış anlamışım galiba
THOUSANDSEPARATOR:=','; // Binlik ayrıcı
DecimalSeparator:='.'; // Ondalık ayırıcı Birde kullandığınız 3.parti bir bileşen ise etkili olmayabilir belki. Bileşen üzerinde ayarları olabilir. İlk Formunuzun onshow yordamına yazın tüm projenizde geçerli olacaktır. | |
| tuanna | 12.12.2004 - 17:03:07 |
| başka bir forumdan bulduğum cevap ama denemedim
///////////////////////////////////////////////// WinExec(pchar ('rundll32.exe shell32.dll Control_RunDLL intl.cpl,,1'), 0); yukaridaki komutla halledersin.... //////////////////////////////////////////////////// | |
| rsimsek | 13.12.2004 - 11:41:20 |
| Bu konuda aşağıdakilere bakabilirsin.. F1 please Application.UpdateFormatSettings := True;
vs.GetUserDefaultLCID(); DateOrder := doDMY; DateSeparator := '.'; DateFullYear := True; DateLeadZero := True; | |
| bilbeyi | 14.12.2004 - 01:02:06 |
| trsoft'un çözümünü ve rŞimsek'in çözümünü denedim ama hala aynı duruyor.
Bu arada Rşimsek gönderdiğiniz kodların sadece Application.UpdateFormatSettings := True; GetUserDefaultLCID(); DateSeparator := '.'; kısmını kullandım. Diğer kısımlarda 'tanımsız' diye hata veriyor. Acaba uses kısmına herhangi bir şey yazmammı gerekiyor? tuanna'nın vermiş olduğu sonuç ise bölgesel ayarlar kısmını çalıştırıyor. Benim amacım program çalıştığında direkt olarak ayarları değiştirmesi | |
| hbahadir | 14.12.2004 - 11:40:00 |
DecimalSeperator := '.'
ThousandSeperator := ','; ana formuna kod yazarsan uygulaman bölgesel ayarları o şekilde kullanır. Fakat 3. parti numeric edit vs kullanıyorsan bu bileşenlerde kendi tanımlarını yapmış olabilirler, onu bir kontrol edersen iyi olur. Kolay gelsin Hüseyin BAHADIR | |