Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.06.13;
Скачать: [xml.tar.bz2];

Вниз

Символы в Unicode   Найти похожие ветки 

 
Паша555   (2004-05-20 00:41) [0]

Просьба разьяснить следуещее
Ситуация
По нажатию некоторой кнопки необходимо добавить в ячейку СтрингГрида некоторый символ используя код Unicode(сэмулировать нажатие клавиши ?) .
Существует ли необходимая функция для преобразования Unicode в "нормальный" символ и как это осуществить?

Извините, если где-то неправильно выразился....


 
Тимохов ©   (2004-05-20 10:54) [1]

1. если вы имеете в виду TStringGrid, то он не умеет работать с unicode. Только с DBCS - т.е. с ansi.
2. Что значит нормальный символ? Unicode можно преобразовать в нормальный (насколько я понимаю, вы имеете в виде однобайтовый символ) только в аспекте определенной кодовой страницы. При том в общем случае не любой символ unicode может быть преобразован в однобайтовый символ в конкретной странице. Например, в русской кодовой страницы нет китайских символов. Такие символы будут заменяться на "?" (по умолчанию). Преобразование делается через widechartomultibyte. Посмотрите как эта функция используется в system.pas.


 
Паша555   (2004-05-23 02:50) [2]

Помогите пожалуйста произвести преобразование из Unicode в однобайтовый символ(Ansi) для вставки в TMS StringGrid ...
Делаю первые шаги в Делфи и уже встретился с таким непростым случаем.... Поэтому просьба поподробнее....


 
Cobalt ©   (2004-05-23 11:52) [3]

Интересует такой вот вопрос - а откуда и как ты получаешь Unicode-символ?
Я тоже хочу получать Unicode-символы!


 
Паша555   (2004-05-25 14:53) [4]

Ну что, никто не знает ????
Уважаемый Мастер Тимохов. помогите хоть Вы.....
Очень нужно (для символов фонетической транскрипции)....
Или можно со шрифтами поиграться, может кто подскажет другое решение???
Задача - в таблицу TMS TAdvStringGrid запихнуть немецкие. русские, французские и фонетические символы....


 
Prohodil Mimo   (2004-05-25 18:06) [5]

Jesli mne ne izmenjajet pamjat" to TAdvStringGrid podderzhivajet RTF-format, a v formate RTF mozhno ukazat" tablicu


 
WebErr ©   (2004-05-25 18:27) [6]


> Паша555   (25.05.04 14:53) [4]

WideCharToMultiByte + F1
!!!


 
Тимохов ©   (2004-05-25 18:30) [7]


> WebErr ©   (25.05.04 18:27) [6]

ну и что?
Будут у него вместо спец символов вопросики.

Имхо здесь нужен компонент поддерживающий unicode.


 
WebErr ©   (2004-05-25 18:35) [8]


> Тимохов ©   (25.05.04 18:30) [7]

Не усложняйте, где вы видели русского программера, у которого появился текст в Unicode с китайскими иероглифами?
ИМХО у него Unicode с кириллицей и Lat.


 
Тимохов ©   (2004-05-25 18:39) [9]


> WebErr ©   (25.05.04 18:35) [8]

Я и не усложняю.
Я (если приглядитесь) именно эту функцию ему и советовал.

Все же если в кодовой странице не будет нужных символов (пусть и латиницы) будут вопросики...


 
WebErr ©   (2004-05-25 18:44) [10]


> Я (если приглядитесь) именно эту функцию ему и советовал.

Я видел, поэтому и наставил автору "!!!". ;)

> Все же если в кодовой странице не будет нужных символов
> (пусть и латиницы) будут вопросики...

Не будут, с вероятностью более 90%. ;)


 
Тимохов ©   (2004-05-25 18:45) [11]


> WebErr ©   (25.05.04 18:44) [10]


> Не будут, с вероятностью более 90%. ;)

что-то меня сомнения берут.
дома проверю.


 
WebErr ©   (2004-05-25 18:50) [12]


> Тимохов ©   (25.05.04 18:45) [11]

Вероятность как считается, помните? ;)
Я тоже - домой...


 
Игорь Шевченко ©   (2004-05-25 22:30) [13]

Паша555   (25.05.04 14:53)

Рисуй сам нужную ячейку StringGrid, при рисовании выбирай шрифт, содержащий в нужном CharSet нужные тебе символы, и без всякого Unicode обойдешься.


 
Глеб   (2004-05-26 07:24) [14]

var
 wch: WideChar; //Здесь хранится символ Unicode
 ch: char; //Новый символ
begin
 ch := char(wch);
end;
 


 
Тимохов ©   (2004-05-26 10:43) [15]


> Глеб   (26.05.04 07:24) [14]

если не ошибаюсь так будет делаться преобразование по текущему locale. А в нем не факт, что будут нужные символы.
вот.


 
Игорь Шевченко ©   (2004-05-26 13:14) [16]


> var
>  wch: WideChar; //Здесь хранится символ Unicode
>  ch: char; //Новый символ
> begin
>  ch := char(wch);
> end;


Только для символов со значениями #0..#127


 
Тимохов ©   (2004-05-26 13:57) [17]


> Тимохов ©   (26.05.04 10:43) [15]

тут я был не прав.
даже по текущему locale преобразовываться не будет.
а вот так, будет

var
  ws: widestring;
  s: string;
begin
  ...
  s := string(ws)
  ...
end;


 
Prohodil Mimo ©   (2004-05-26 17:52) [18]

TAdvStringGrid imejet :
- rich text cells
- HTML formatted cells

Tak chto flag tebe v ruki, i ne par"sja. Problem s otobrazhenijem hot" kitajskih hot" kakih - ne vizhu.


 
Паша555   (2004-05-31 00:38) [19]

Пол недели бился, нехватает у меня знаний видимо, а литературу тяжко найти....
Может кто поможет - скинет примерчик СтрингГрида с возможностью вбивать туда различные символы(см. выше)......
Заранее СПАСИБО.


 
Паша555   (2004-05-31 00:39) [20]

zschule@mail.ru



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.06.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.059 c
1-1086152549
sils
2004-06-02 09:02
2004.06.13
Траблы с QuickReport


14-1085212962
Ozone
2004-05-22 12:02
2004.06.13
Алгоритм сравнения кодов


14-1084473025
ИМХО
2004-05-13 22:30
2004.06.13
Установка Office.XP


1-1086156408
Term
2004-06-02 10:06
2004.06.13
Поиск файлов


1-1085908005
Donkey7c
2004-05-30 13:06
2004.06.13
Передача строк в/из длл...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский