|
[ inherited @ 13.11.2006. 21:36 ] @
| Koristim Tnt kontrole, a u windowsu Non-Unicode mi je podeseno na Serbian Latin. Kad u language bar-u postavim Serbian Cirilic, tad dobijem nesto tipa: ]]][[[ ? Ista stvar je kad za Non-Unicode mi je podeseno na Serbian Cirilic. U pitanju je XP SP2. Kad koristim u language bar-u Serbian Latin, onda lepo radi. Kako bih mogao koristiti cirilicu u svojim programima? Odnosno, da li Tnt kontrole to mogu resiti? |
[ Nemanja Avramović @ 13.11.2006. 21:42 ] @
Meni sa TNT kontrolama sve radi lepo. I ćirilica i latinica.
[ inherited @ 13.11.2006. 23:44 ] @
U Turbo Delphiju mi normalno funkcionise, tj. imam šđčćž! U delphiju 7 ni u code editoru nema šđčćž, tako da je s njim nesto problem. Da nisam mozda neku opciju pogresno setovao u delphiju? Ako imate neku ideju?
[ savkic @ 14.11.2006. 08:20 ] @
> Koristim Tnt kontrole, a u windowsu Non-Unicode mi je podeseno na Serbian Latin.
> Kad u language bar-u postavim Serbian Cirilic, tad dobijem nesto tipa: ]]][[[ ?
Gde dobijaš kuke i kvake, u object inspectoru ili edit kontrolama? Imaj na umu da nemaju svi fontovi potpunu podršku za sve jezike, koji ti koristiš? Probaj Arial.
> U Turbo Delphiju mi normalno funkcionise, tj. imam šđčćž! U delphiju 7 ni u code editoru
> nema šđčćž, tako da je s njim nesto problem.
Moraš da posebno podesiš system jezik i ispravno podesiš font za editor. Kada se podesi kako treba i u Delphi 7 može čak i ćirilica.
[ inherited @ 14.11.2006. 11:26 ] @
Kvake dobijam u Object Inspectoru i u edit kontrolama.
Ali, kad font postavima na Courier New ili Arial, onda su kavake i dalje u Object Inspectoru. Ali ne i u edit kontrolama.
Jos mi je problem, kad filtriram podatke kao Serbian Latin, tako upisani - latinica, filtriranje funkcionise, a kad je Serbian Cililic - cirilica, onda nece, kao da je DataSet prazan.
[Ovu poruku je menjao inherited dana 14.11.2006. u 12:58 GMT+1]
[ savkic @ 14.11.2006. 13:24 ] @
> Ali, kad font postavima na Courier New ili Arial, onda su kavake i dalje u
> Object Inspectoru. Ali ne i u edit kontrolama.
Moraš ili promeniti sistemski jezik ili promeniti font za ObjectInspector pomoću GExperts.
> Jos mi je problem, kad filtriram podatke kao Serbian Latin, tako upisani -
> latinica, filtriranje funkcionise, a kad je Serbian Cililic - cirilica, onda nece,
> kao da je DataSet prazan.
Nisi dovoljno jasan. Koja baza, koja kodna strana, koji charset, koje dataset komponente, kako radiš filtriranje...
[ inherited @ 14.11.2006. 17:41 ] @
GExperts? Mozes li mi pojasniti kako?
Baza Access, preko ADOQuery filtriram. Kodna strana?
[ savkic @ 14.11.2006. 18:41 ] @
> GExperts? Mozes li mi pojasniti kako?
Odeš na google, ukucaš gexperts, klikneš na prvi link, skineš, instaliraš i negde u njegovim opcijama ćeš pronaći i podešavanje fonta.
> Baza Access, preko ADOQuery filtriram.
Opet nisi dovoljno jasan, kako _tačno_ filtriraš?
> Kodna strana?
U kojoj kodnoj strani (kakva slova prihvata, unicode, latinicu, ćirilicu, bilo šta itd.) je ta baza/tabela odnosno polje?
[ inherited @ 14.11.2006. 19:14 ] @
GExperts ne mogu skinuti, ili mi ne dozvoljava ili ga nema tamo.
Filtriranje:
Code:
ADOQuery.Close;
ADOQuery.SQL.Clear;
ADOQuery.SQL.Add('SELECT * FROM TABELA');
ADOQuery.SQL.Add('WHERE Kolona LIKE'' ' + TntEdit1.Text + '%'' ');
ADOQuery.Open;
Prihvata ARIAL a Script= Cirilic, ali u Object Inspectoru to su kvake [[[[[[ a na formi se vide nasa cirilicna slova.
U Access - u se lepo vidi cirilica! U TTntDBGrid se vidi kao i u Access - u nasa cirilicna slova kad je font ARIAL a Script= Cirilic.
Ajd ako to i moze tako, ali kad u TntEdit otkucam nasa cirilicna slova, a i u bazi je tako, jednostavno ne moze da isfiltrira, kao da nema nista u DataSetu?
[ stankons @ 14.11.2006. 19:53 ] @
Moras skinuti i tnt lx kontrole, tamo imas ado koji podrzava wide string (unicode)...
[ inherited @ 14.11.2006. 22:08 ] @
Hvala, jel moze link?
[ savkic @ 14.11.2006. 22:44 ] @
> GExperts ne mogu skinuti, ili mi ne dozvoljava ili ga nema tamo.
http://www.gexperts.org/ zar je toliko teško naći ga.
> ADOQuery.SQL.Add('WHERE Kolona LIKE'' ' + TntEdit1.Text + '%'' ');
Ne možeš tako raditi, ako mešaš WideString (Unicode) i AnsiString dolazi do automatske konverzije WideStringa u Unicode po default sistem kodnoj strani. Moraš uraditi ručno konverziju po odgovarajućoj kodnoj strani (1250 ili 1251).
> u bazi je tako, jednostavno ne moze da isfiltrira, kao da nema nista u DataSetu?
Dodaj jedan TMemo na formu i kad završiš pripremu upita uradi Memo1.Lines.AddStrings(ADOQuery.SQL) i videćeš i sam kako zaista izgleda upit.
[ inherited @ 15.11.2006. 12:18 ] @
Gexperts, naravno nije tesko naci ga, ali rekao sam da linkovi koji su ponudjeni ne funkcionisu, pa nisam mogao izvrsiti download.
WideString (Unicode) i AnsiString, kod TntEdit.Text vidim da je WideString, e sad, kako to odraditi da mi se filtriranje vrsi ispravno, da cita i cirilicu? Sa obicnim Tedit -om nije isto htelo, jel ima neka posebna procedura koja bi konvertovala?
Na kraju, na osnovu filtriranja koji sam postavio ranije, prikaze u TMemo:
Code: SELECT * FROM TABELA WHERE KOLONA LIKE LIKE'?%'
U tabeli u Access -u su nasa cirilicna slova, jer koliko sam procitao Access podrzava UNICODE, zato sam i postavio Tnt kontrole.
Da probam s drugom komponentom ili nekom procedurom - funkcijom koja bi to odradila?
Edit:
Probao sam i sa TEdit, Font - Charset = DEFAULT_CHARSET, pa sam promenio u ANSI_CHARSET,
a font je Arial. Pretraga i dalje ista, ne ide.
[Ovu poruku je menjao inherited dana 15.11.2006. u 13:47 GMT+1]
[ Nemanja Avramović @ 15.11.2006. 15:02 ] @
[ savkic @ 15.11.2006. 16:49 ] @
> Na kraju, na osnovu filtriranja koji sam postavio ranije, prikaze u TMemo:
> SELECT * FROM TABELA WHERE KOLONA LIKE LIKE'?%'
Za početak imaš LIKE viška ali pretpostavljam da ti je to greška u kucanju. Uglavnom, od Accessa se traži da vrati slogove koji počinju sa upitnikom a takvih verovatno nema.
> Da probam s drugom komponentom ili nekom procedurom - funkcijom koja bi to odradila?
Unicode->Ansi konverziju možeš uraditi pomoću WideCharToMultiByte API funkcije ili nekim od postojećih wrapera, recimo iz Jedi biblioteke (JclUnicode).
> Probao sam i sa TEdit, Font - Charset = DEFAULT_CHARSET, pa sam promenio u ANSI_CHARSET,
RUSSIAN_CHARSET je za ćirilicu, za latinicu je EASTEUROPEAN_CHARSET.
Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|