Autor Téma: Win10 ver 1703 + D2009 + TDateTimePicker  (Přečteno 675 krát)

Offline martinnr

  • Plnoletý
  • ***
  • Příspěvků: 122
  • Karma: 2
    • Verze Delphi: 7,2009,XE7
Win10 ver 1703 + D2009 + TDateTimePicker
« kdy: 09-05-2017, 13:18:00 »
Po instalacii poslednej velkej aktualizacie Win10, teda na ver 1703, mi zacali blbnut datumove komponenty v D2009.
TDateTimePicker (aj JvDateTimePicker) uplne rozmrvi datum, pripadne ho vobec nedokaze zobrazit.
Ak je v syteme nastaven kratky format datumu na "d. M. rrrr", tak v delphi (design time) je dnesny datum ako " 9.   5. 2017" - pred mesiacom je niekolko medzier (viac ako jedna). Format nemaju komponenty ziadny po prekompilovani a spusteni ma DateTimePicker zobrazene "9. 5. 7" a JvDateTimePicker zobrazi "       9.     5     .      2017".
Po nastaveni property Format na "d.M.yyyy" je v desgin time tak ako predtym, ale po spusteni maju komponenty zobrazene " 9. 5.17" a "    9.  5   .2017".
Po zmene formatu (kratky) v systeme windows na "d.M.rrrr" je v delphi (bez Format) zobrazene " 9.   5. 2017" v oboch, po spusteni je "9.5.7" a "     9.  5  .2017". S Format "d.M.yyyy" v disign time rovnako, po spusteni "9.5.7" a "    9.  5   .2017".
No proste skoro furt inak a nikdy nie dobre...

Robi mi to iste aj v D7.

Neviete to niekto ceknut u vas?

Win10 su Pro a jazyk na SK.
A tiez ten isty exac to zobrazi zle aj na dalsom pocitaci s takou istou verziou W10. ale nie az tak zle. da tam " 9.  5. 2017" - dve medzery pred mesiacom, pricom v systeme je "d. M. rrrr". ako keby tie medzery pre dnom/mesiacom/rokom dava aj komponenta, aj system, alebo co...
Na Win7 to zobrazi ako tak dobre "9. 5. 2017" - inak ako je format v komponente (d.M.yyyy) a inak ako je v systeme (dd.MM.rrrr).

Offline martinnr

  • Plnoletý
  • ***
  • Příspěvků: 122
  • Karma: 2
    • Verze Delphi: 7,2009,XE7
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #1 kdy: 09-05-2017, 13:32:07 »
tak kolega nasiel nieco k tomu - https://quality.embarcadero.com/browse/RSP-17886

Offline Ján Masaryk

  • Nováček
  • *
  • Příspěvků: 32
  • Karma: 1
    • Verze Delphi: 2010
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #2 kdy: 09-05-2017, 19:24:41 »
Zhodou okolností som to riešil minulý mesiac, lebo mám svoj sw nastavený tak, aby mi kontroloval pri štarte, či je systémový dátum na 10 znakov (napr. 01.01.2017) a čas na 8 znakov (napr. 01:02:03).

Formáty dátumu a času, ktoré ponúka W10 sú nanič, ale dajú sa editovať.

V skratke: Ovladací Panel -> Jazyk -> Zmeniť formát dátumu, času alebo čísel -> ďaľšie nastavenia -> dátum => a môžeš si to upravovať ako len chceš  ;)

Možno by sa to dalo nastaviť priamo, cez nejakú win api funkciu. Na to som veľmi malý pán, ale sú tu ľudia, čo to určite dokážu.

P.S. To, že si na to prišiel pri TDateTimePickeri je ten lepší prípad. Horšie by bolo, keby sa ti takýto "dátum" podarilo zapísať do databázy, to býva lepšia zábavka...  :o Mne sa to raz podarilo...

P.P.S. S W10 si ešte asi všetci užijeme. Aby som ti mohol napísať postup, tak som pol hodiny googlil ako "fixnúť" Ovladací panel, aby sa sámovoľne nezatváral...

Offline rob.

  • Nováček
  • *
  • Příspěvků: 34
  • Karma: 0
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #3 kdy: 10-05-2017, 09:23:56 »
nastavení formátu data v systému nic neřeší, jak je zřejmé už z příspěvku zadavatele. Můžete si klidně v systému rucne nastavit d.M.yyyy a Tdatetimepicker  tam stejne v zobrazeni na win10 creators update prida mezery navic, na Anniversary update (a vsech predchozich win) to bylo vporadku. Pritom kdyz prevedete datum na text treba pres fci datetostr... tak je datum vporadku, presne dle nastaveni v systemu. Problem je tedy v Tdatetimepickeru. A neni to otazka verze delphi. Jednoduche reseni je zapnout runtime themes pri kompilaci, kdyz to nechcete tak nevim. Odkaz, ktery poslal zadavatel je na uzavrenem foru vyzadujici registraci coz se mi nechce. Dobre by bylo popis problemu a reseni popsat zde, dekuji.

Offline Ján Masaryk

  • Nováček
  • *
  • Příspěvků: 32
  • Karma: 1
    • Verze Delphi: 2010
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #4 kdy: 10-05-2017, 10:26:11 »
Ja som popisoval nastavenie v poslednej verzii, teda 1703.  TDateTimePicker-y po editácii ukazujú dátum bez medzier.
Práve až pri editácii sa tam ukážu medzery, ktoré treba vymazať.

Tento problém existuje už od čias WXP SP2 - minimálne pri SK verzii, čo bolo WXP Eng + Lip SVK. Po prechode na SP3 sa niekedy  prestavil formát dátumu a času a bolo to treba znovu prestaviť ručne.

Offline Ján Masaryk

  • Nováček
  • *
  • Příspěvků: 32
  • Karma: 1
    • Verze Delphi: 2010
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #5 kdy: 10-05-2017, 10:38:20 »
...mimochodom v TDAteTimePicker je  property Format - stačí nastaviť na dd.MM.yyyy a je po problémoch  8)

Offline rob.

  • Nováček
  • *
  • Příspěvků: 34
  • Karma: 0
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #6 kdy: 10-05-2017, 11:30:29 »
no to teda neni po problemech a trvam na tom co jsem psal, tento problem se tyka pouze creators update. Tak jsem se prihlasil a precetl to forum na embarcadero.. a snad se nikdo nebude zlobit kdyz zde uvedu nejduleziteksi fakta:
- "Appears after installation of Windows 10 Creators Update"
- "At this point, quick solution is adding manifest to your application. " tedy to jsem zminil, staci enable runtime themes...
- "Microsoft's Platform SDK support group officially said
    ComCtl32.dll version 5.8 on Windows 10 Creators update has this critical drawing problem.
    ComCtl32.dll version 6 is working fine without any trouble,
This behavior is controlled by only manifest-file. Until Microsoft fix this issue, please add a manifest file into your application. "
- "Windows 10 Insider Preview 16188 (released on May 4th) fixed this issue. "

Offline rob.

  • Nováček
  • *
  • Příspěvků: 34
  • Karma: 0
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #7 kdy: 10-05-2017, 11:57:10 »
jeste nejake informace zde
https://social.msdn.microsoft.com/Forums/en-US/4cf03067-46c4-4962-af8c-f4b1483e88ba/date-time-picker-garbled-after-windows-10-creators-update

Offline martinnr

  • Plnoletý
  • ***
  • Příspěvků: 122
  • Karma: 2
    • Verze Delphi: 7,2009,XE7
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #8 kdy: 11-05-2017, 09:09:55 »
manualne nastavenie property "Format" pre DateTimePicker som skusal samozrejme. myslim, ze som to aj tak pisal v mojom prvom prispevku. to nepomohlo. vlastne tak som prisiel na problem, kedy som potreboval mat nastaveny nestandardny format datumu - "ddMMyyyy" a Creators update mi to cele rozfofroval.
ani manipulovanie s formatom v syteme nema ten spravny efekt pre uplne vyrisenie.
Prikladam screenshot tej stranky.
v D7 mi vytvorenie toho manifestu k aplikacii nepomohlo. aspon nie uplne, do povodneho teda pozadovaneho stavu.

Offline Roman Č.

  • Nováček
  • *
  • Příspěvků: 5
  • Karma: 0
    • Verze Delphi: Delphi 7, XE2
Re:Win10 ver 1703 + D2009 + TDateTimePicker
« Odpověď #9 kdy: 09-06-2017, 13:59:24 »
Přátelé, především martinnr, nemáte někde přesně návod, jak do D7 appky dostat ten manifest a co v něm přesně má být? Mně by stačilo, abych to rozchodil aspoň do "nějakého" stavu, protože nyní v D7 appce v komponentě TDateTimePicker nevidíme vůbec nic, a to je velice zoufalé.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Jméno: E-mail:
Ověření:
Křestní jméno zpěváka Gotta: