C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Проблема с буфером обмена Clipboard()
FANTOM181
Отправлено: 15.05.2005, 14:44


Ученик-кочегар

Группа: Участник
Сообщений: 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

Вернуться в Вопросы программирования в C++Builder