Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 06:11 01.05.24 
Компютри и Интернет
   >> Delphi
Всички теми Следваща тема *Кратък преглед

Тема Формат на системната дата  
Авторval63 (Нерегистриран)
Публикувано17.11.01 13:36



Някой знае ли начин за промяна на формата на системната дата ?
/примерно "17.11.2001 г." --> "17.11.01"/
Трябва при активиране на приложението да го променя,
а след приключване да го върна както е бил.



Тема Re: Формат на системната датанови [re: val63]  
Автор PhantomAS (стар ерген®)
Публикувано17.11.01 14:39



Potarsi sledwastite promeliwi w helpa na Delphi-to - a pak az ti dawam edna primerna konfiguracia koiato mozesh da prawish pri satrtirane na proramata za da ia "pobalgarish" malko - ili pone spored men.

----------------------------------------------------------
ShortDayNames[1]:='Н';ShortDayNames[2]:='П';
ShortDayNames[3]:='В';ShortDayNames[4]:='С';
ShortDayNames[5]:='Ч';ShortDayNames[6]:='П';
ShortDayNames[7]:='С';
LongMonthNames[1]:= 'Януари'; LongMonthNames[2]:= 'Февруари';
LongMonthNames[3]:= 'Март'; LongMonthNames[4]:= 'Април';
LongMonthNames[5]:= 'Май'; LongMonthNames[6]:= 'Юни';
LongMonthNames[7]:= 'Юли'; LongMonthNames[8]:= 'Август';
LongMonthNames[9]:= 'Септември'; LongMonthNames[10]:='Октомври';
LongMonthNames[11]:='Ноември'; LongMonthNames[12]:='Декември';
CurrencyString:='лв. ';
CurrencyFormat:=4;
NegCurrFormat:=5;
DateSeparator:='/';
ShortDateFormat:='dd/MM/yyyy';
ThousandSeparator:=',';
DecimalSeparator:='.';

---
Е т'ва е живот!



Тема Re: Формат на системната датанови [re: PhantomAS]  
Авторval63 (Нерегистриран)
Публикувано17.11.01 15:00



Не е това проблема.
При запис в базата на поле от вид "Date", програмата плаче, че
това не е валидна дата заради това ' г' накрая.
Естествено след промяна в Regional Settings всичко се оправя, но
това не ме устройва, защото не е коректно да принуждаваш потребителя
да си настройва Windowsa заради твоята програма.



Тема Re: Формат на системната датанови [re: val63]  
Автор naki (Power User)
Публикувано17.11.01 17:01



Ама как така?
Ти записа не го ли правиш директно от DateTime
променлива?



Тема Re: Формат на системната датанови [re: val63]  
Автор PhantomAS (стар ерген®)
Публикувано18.11.01 01:02



Predi da twardish 4e ne towa e problema - spri i pomisli malko - nali ti kazah da proverish za kakwo sluzat tezi "konstantni promenlivi" - naprwi si truda da pro4etesh malko helpa na Delphito
- konkretno na waprosa ti - wawezdaneto na datata w BD ( !!!!!!!! ako izpolzwash BDE !!!!!!!!! - zawisi ot nastrojkite na BDE -to) zawisi ot towa kakaw modul polzwash za dostap do sastinskata Data Engine - moze da e BDE, a moze da ne e minawash prez neia. Mezdu drugoto daze i kato polzwash BDE pri 4ast ot operaciite se izpolzwa Regional Settings, a pri drugi se izpolzwat nastrojkite na BDE - koito po default sa MDY - ako ne si pipal razbra se tam kadeto ne ti e rabota. Da ama poletata w koito se wawezda datata obiknoweno izpolzwat formata na Winbozata - pri koeto naistina nastawa neweroiatna sumatoha - pri polozenie primerno 4e ti se opitwash da izpolzwash niakoia ot funkciite za preobrazuwane na data kum string ili oste po losho ot STRING kum data.
Primerno iskash da setnesh poleto na
Table1.FeldByName('MyDate').asDateTime:=StrToDate('12/01/1999');
da ama mnogo losha situacia se polu4awa - stoto tazi funkcia zawisi ot regionalnite nastrojki na win-a - t.e. na edin komputar ste raboti ama na drug ne - osobenno na takaw na kogoto sa instalirali FlexType ;-))) toku sto.
Naprawi si slednia primer(PISHA NAIZUST - moze da ima greshki)

var D:TDateTime;
s:string;
begin
D:=Now;
ShortDateFomat:='dd/mm/yyyy g.'; //ili probwaj s LongDateFormat ako towa ne raboti taka kakto mislia
s:=DateToStr(s);
MessageBox(s,'Look', MB_OK);
ShortDateFomat:='dd/mm/yyyy GGGGG.';
s:=DateToStr(s);
MessageBox(s,'Look', MB_OK);
end;

Bi triabwalo da si razbral 4e niama nuzda da promeniash regionalnite nastrojki na Win-a - pri startiraneto na programata te se zarezdat w onezi "konstanti" i se polzwat ot funkciite ot tam - taka 4e edinstwenoto koeto triabwa da nprawish e da si izberesh nastrojki s koito da rabotish i da gi ustanowish na podhodiasto miasto w progamata
Towa oba4e samo po sebesi e goliam nedostatak - moze pak klienta da iska da wizda datite taka kakto sa si nastroeni w Windowsa - edinstwenia na4in go e kazal kolegata - ami prosto predawaj nestata 4rez promnliwi TDateTime

---
Е т'ва е живот!



Тема Re: Формат на системната датанови [re: PhantomAS]  
Автор naki (Power User)
Публикувано18.11.01 22:07



Napulno si prav, no ima edin detail -
ako clienta pusne programata, tja si napravi jelanite
nastroiki i SLED towa cilenta promeni
regional settings dokato programata raboti,
programata she razbere towa i she se apply-nat i w neq.
Imashe kak da se izbegne towa,
pak s nekwa globalna promenliva, ili
maj puk beshe s nekoe property na Application...
Az taka go pravq no na C++ Builder...



Тема Re: Формат на системната датанови [re: PhantomAS]  
Авторval63 (Нерегистриран)
Публикувано19.11.01 11:18



Благодаря за съветите, но вие наистина не разбирате
проблема ми!
Използувам ExpressQuantumGrid
В тази великолепна компонента можеш да редактираш
датата направо като я избираш от контрола подобна на DatePickEdit.
За съжаление колегите от Developer Express Inc. не са предполагали,
че някъде в регионалните сетинги ще има 'г'
Между другото не знам как не ви се е случвало да се натъкнете
на такъв проблем. Маса програми гърмят заради невалидна дата.
Та наистина въпросът ми беше:

СМЯНА ФОРМАТА НА СИСТЕМНАТА
ДАТА В WINDOWS - ПРОГРАМНО

Естествено, че мога да използувам променлива от тип ТDateTime,
която да форматирам както си искам, но това трябва да става
винаги нa Before Post, което разваля цялото удоволствие.




Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.