Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Работа с укр. шрифтом [D7, dBase, FoxPro]


Shurko ©   (2003-03-05 20:37:00) 

При работе с таблицами DBAse через BDE идет замена укр. "і" на "#" .


angelcom   (2003-03-10 23:37:00) [1]

Для SZap
Поднимаю ветку, ответь если не трудно...


amgelcom   (2003-03-10 04:11:00) [2]

Для SZap
Основная беда исходила от программы (не считая юзеров) в ней небыло проверки и исключения вводимых символов.
Первым делом я переписал им программу со всеми дополнительниями.//

Поясни пожалуйста, как это (проверки и исключения вводимых символов)и если можно кинь примерчик


Shurko   (2003-03-06 11:59:00) [3]

Удалено модератором
Примечание: Личная переписка


SZap   (2003-03-06 10:17:00) [4]

Меня както в одной фирме (где работают мои друзья) озадачили исправлением "коряво" заполненной базы. В текстовых полях (где все должно писаться русскими буквами в верхнем регистре) существовали записи не только заполненные в нижнем регистре, некоторые юзеры умудрялись (возможно даже намеренно) вместо русских "АВСЕНКМОРТХ" писать похожими на вид латинскими символами....
Таким образом, при поиске, фильтрации и т.п. по текстовым полям терялось много записей, что приводило в недоумение руководство...
Основная беда исходила от программы (не считая юзеров) в ней небыло проверки и исключения вводимых символов.
Первым делом я переписал им программу со всеми дополнительниями.
А для базы написал утилитку с функцией конвертации символов, чтото типа этого:
Function TMainForm.ConvertER(S: String): String;
var
i: Integer;
begin
for i := 1 to Length(S) do begin
if Ord(S[i]) = 65 then S[i] := Chr(206); // А
if Ord(S[i]) = 66 then S[i] := Chr(206); // В
if Ord(S[i]) = 67 then S[i] := Chr(206); // С
if Ord(S[i]) = 69 then S[i] := Chr(206); // Е
if Ord(S[i]) = 72 then S[i] := Chr(206); // Н
if Ord(S[i]) = 75 then S[i] := Chr(206); // К
if Ord(S[i]) = 77 then S[i] := Chr(206); // М
if Ord(S[i]) = 79 then S[i] := Chr(206); // О
if Ord(S[i]) = 80 then S[i] := Chr(206); // Р
if Ord(S[i]) = 84 then S[i] := Chr(206); // Т
if Ord(S[i]) = 88 then S[i] := Chr(206); // Х
end;
Result := S;
end;


Соловьев   (2003-03-06 09:44:00) [5]

Я поборол єту проблему так :
1. Поставил пакет ruskii - могу выслать.
2. приконектился через драйвер ODBC.


Shurko   (2003-03-06 09:37:00) [6]

Спасибо за помощь.Но мне в наследство достались уже заполненные таблицы(когда я сам создаю таблицы все работает) и в настройках BDE стоит кодировка cp866RUS. А в DataBase DeskTop языковой драйвер не задан.И все это нормально работает на одной машине. Кто знает еще какой нибуть финт ушами кроме перечисленных выше.


denary   (2003-03-06 01:25:00) [7]

Была такая же проблема. Поменял кодировку в DataBase Desctop cp866RUS на WEuropeANSI. (Прямо в таблице бд, там где задаешь индексы)Кроме того, там же нужно шрифт подобрать. Times new roman cyr, если не ошибаюсь. В общем, чтоб он показывал укр. букву i у тебя в таблице, проверь. Единственное, потом при сортировке эта буква лезет вперед. С этим не знаю что можно сделать.


MsGuns   (2003-03-05 22:36:00) [8]

Извиняюсь, не OnKeyDown, а OnKeyPress ;)


MsGuns   (2003-03-05 22:35:00) [9]

Я делал достаточно тупо: перехватывал OnKeyDown и менял украинские буквы на английский аналог. Литеру "i" двойную менял на одинарную, мягкую "Е" менял на русскую "е". Событие, еснно ,того контрола, посредством которого узер вводит.


Наверх

Титульная страница Поиск, карта сайта Написать письмо