[ 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 ] @
Probaj preko http://sourceforge.net/projects/gexperts/
[ 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.