Ученик-кочегар
Группа: Участник
Сообщений: 20
|
У меня в программе есть следующий кусок кода:
CODE | char *buftxt1,*buftxt2;
Size=strlen(Clipboard()->AsText.c_str());
Size++;
buftxt1=new char[Size];
buftxt2=new char[Size];
Clipboard()->GetTextBuf(buftxt1,Size);
.
.
тут идет код программы в котором содержимое строки buftxt1 переписывается в строку buftxt2, по определенному правилу(идет исключение определенных символов)
.
.
Clipboard()->Clear();
Clipboard()->SetTextBuf(buftxt2);
Memtxt->PasteFromClipboard(); |
в нем я копирую в buftxt1 содержимое из буфера. Затем анализирую buftxt1 и переписываю его содержимое(исключая определенные символы) в buftxt2. Затем я очищаю буфер и копирую в него содержимое buftxt2. Вот тут и начинаются проблеммы. Если в буфере обмена находится русский текст, то в buftxt1 копируются иероглифы вместо русского тектса. И когда я копирую buftxt2 в буфер обмена, то вместо русского текста тоже идут одни знаки (с английским текстом все впорядке. Кстати, я пробовал копировать в буфер обмена заранее созданную строку с русским текстом, в буфере обмена оказываются одни иероглифы). И соответственно при вставке в Memtxt содержимого из буфера тоже идут одни значки вместо русского текста. Как это исправить?
Отредактировано FANTOM181 — 15/05/2005, 15:38 |