Cyrylica w FileListBox Delphi

0

Hej.
Pracuję w Delphi 7
W folderze mam część plików o nazwach w cyrylicy i nazwy tych plików w FileListBox to same pytajniki.
(W oknie windows Explorer jest OK)
Próbowałem ustawić czcionkę komponentu na Arial Unicode ale niczego to nie zmienia.
Może ktoś zna sposób żeby nazwy plików były wyświetlane prawidłowo niezależnie od czcionki.
bardzo proszę o radę

0

Pokaż metodę jak wczytujesz nazwy plików.

Generalnie plików nie powinno się nazywać znakami specjalnymi bo programy nieunicode mają z tym często problem. Więc jeżeli możesz, to zmień po prostu te nazwy, gdyż nie powinny one być w unicode. (podobne problemy są z chińskimi grami - też nie są unicode a mają chińskie nazwy plików= masakra).

0

FileListBox01.Directory:='adres folderu';

0

d7 nie obsługuje unicode - potrzebujesz komponentów, które to potrafią, np. tnt controls

0

Po zainstalowanie kopmonentów z pakietu TNT sprawa nie wygląda lepiej.
Ponieważ w pakiecie nie ma komponentu FileListBox więc musiałem użyć :

                   FindFirst('F:\nazwaFolderu'+'\*.*',faAnyFile,SR);

                       ........
                  Form1.TntListBox11.Items.Add(SR.Name);

Niestety pomimo że TNTListBox wyświetla prawidłowo dokument z tekstem mieszanym (Latin + Cyrylica)
to nazwy pliku apisanej w cyrylicy (np 'яфйк.txt') nie wyświetla prawidłlowo.
Czyżby zastosowana metoda pobierania nazw plików była przyczyną?

0

używasz findfirst, który z kolei nie ma unikodu…
jest funkcja WinAPI, FindFirstFileW

0

Tak!!! teraz z FinFirstFileW plus tntComponent działa znakomicie :)

Pliki w folderze D:\pobrane
Film.avi
Яряфйцук.txt
Nowy Folder
Jutro.mp3

1 użytkowników online, w tym zalogowanych: 0, gości: 1