Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
ВнизMS Word и буфер обмена Найти похожие ветки
← →
_Shuler_ (2008-01-13 19:53) [0]всем хай!!!
вставляю из буфера обмена русский текст в документ ворда и пояляются какие-то крякозяблики(((.
если вставить в другой текстовый редактор, то все нормально.
но в виндоузовском блокноте теже глюки. Подскажите а чем проблема???
может из-за кодировки???
Подскажите ПЛЗ
← →
savyhinst © (2008-01-13 19:57) [1]
> может из-за кодировки
Именно из-за неё.
← →
Dib@zol © (2008-01-13 19:59) [2]показывай код добавления в буфер.
← →
_Shuler_ (2008-01-13 20:02) [3]Clipboard.AsText := clipboard.AsText+"sdfdg"
а в ворде вот так просто:
wordApplication1.Selection.Paste;
← →
_Shuler_ (2008-01-13 20:03) [4]но с английсеом все нормально. только русский глючит...
← →
{RASkov} © (2008-01-13 20:27) [5]> [4] _Shuler_ (13.01.08 20:03)
Проводи операцию копирование-вставка при русской раскладке...
← →
_Shuler_ (2008-01-13 20:30) [6]хы. действительно работает. Спасибо.
Вот только не пойму: это как считать за глюк или так и должно быть???
← →
{RASkov} © (2008-01-13 20:36) [7]фича
← →
_Shuler_ (2008-01-13 21:31) [8]возникла еще проблемка.
после подключения к ворду (раскладка у меня по умолчанию english) перед вставкой не успеваю сменить раскладку(((.
делаю так: LoadKeyboardLayout( StrCopy(Layout,"00000419"),KLF_ACTIVATE);
как перед вставкой сменить раскладку?
← →
_Shuler_ (2008-01-13 21:34) [9]наверно так бужет корректней: как сменить раскладку именно в ворде???
Спасибо!
← →
Anatoly Podgoretsky © (2008-01-13 22:00) [10]> _Shuler_ (13.01.2008 20:30:06) [6]
Считай за глюк, поскольку ты работаешь по технологие ДОС, а не Windows NT
В буфер надо помещать в Юникоде, а не ANSI
← →
_Shuler_ (2008-01-13 22:05) [11]> Anatoly Podgoretsky © (13.01.08 22:00) [10]
> Считай за глюк, поскольку ты работаешь по технологие ДОС,
> а не Windows NTВ буфер надо помещать в Юникоде, а не ANSI
ok.
Подскажите как тогда в Юникоде помещать
или
как сменить раскладку клавы в ворде.
PLZ
← →
Anatoly Podgoretsky © (2008-01-13 22:47) [12]Мне лень заниматься экспериментами, попробуй сам переделать эту функцию из генофонда.
procedure TClipboard.SetAsText(const Value: string);
begin
SetBuffer(CF_TEXT, PChar(Value)^, Length(Value) + 1);
end;
← →
_Shuler_ (2008-01-13 23:07) [13]что-то не получается.(((
>>>SetBuffer(CF_TEXT, PChar(Value)^, Length(Value) + 1);
делфи говорит что не знает такого.
← →
Anatoly Podgoretsky © (2008-01-13 23:08) [14]> _Shuler_ (13.01.2008 23:07:13) [13]
Это текст из модуля ClipBrd остальное сам там посмотришь, или можешь сам все сделать напрямую через WinAPI.
← →
{RASkov} © (2008-01-13 23:51) [15]> [13] _Shuler_ (13.01.08 23:07)
Не уверен в правильности("тупая переделка"), но всеж:procedure SetBuffer(Format: Word; var Buffer; Size: Integer);
var
Data: THandle;
DataPtr: Pointer;
begin
OpenClipboard(0);
try
Data := GlobalAlloc(GMEM_MOVEABLE+GMEM_DDESHARE, Size);
try
DataPtr := GlobalLock(Data);
try
Move(Buffer, DataPtr^, Size);
SetClipboardData(Format, Data);
finally
GlobalUnlock(Data);
end;
except
GlobalFree(Data);
raise;
end;
finally
CloseClipboard;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
const S: PWideChar ="Тест русского текста Test English text Яя";
begin
SetBuffer(CF_UNICODETEXT, PWideChar(S)^, Length(S)*2+2);
end;
(Для раздумья)
← →
_Shuler_ (2008-01-15 21:20) [16]мда ;жаль.
но что-то я не смог разобраться с этим Unicode(((
мож кто еще поможет.ПЛЗ
← →
ketmar © (2008-01-15 22:00) [17]>[16] _Shuler_ (15.01.08 21:20)
>но что-то я не смог разобраться с этим Unicode(((
>мож кто еще поможет.ПЛЗ
запросто. магазин хозтоваров->метла->нет проблем с Unicode.
или учимся искать в интернете и справках, да вдумчво читать найденое.
← →
Amoeba © (2008-01-15 23:38) [18]http://www.delphikingdom.com/asp/viewitem.asp?catalogid=780
Тут много чего интересного, особенно в обсуждении. Да и здесь на форуме в конце прошлого года было немало конкретно полезного.
← →
_Shuler_ (2008-01-17 11:10) [19]
> {RASkov} © (13.01.08 23:51) [15]
Спасибо.
Разобрался:)
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2008.02.10;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.05 c