Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.04.11;
Скачать: CL | DM;

Вниз

Как определить шрифт при копировании через буфер обмена?   Найти похожие ветки 

 
Oleg)   (2004-04-23 11:59) [0]

В новом проекте на форме лишь один мемо кнопка
по нажатию кнопки выполняется:

Memo1.Lines.Clear;
Memo1.Lines.Add("Проверка");
Memo1.SelectAll;
Memo1.Font.Name:="Arial CYR";
Memo1.Font.Charset:=204;
Memo1.Font.size:=20;
Memo1.CopyToClipboard;

Вставляю в Excel, а  там  абракадабра (ïðîâåðêà), и подобрать шрифт не  удается -(


 
Курдль ©   (2004-04-23 12:01) [1]

Почитайте про форматы буфера обмена. Кажись, на Королевстве Делфи были статьи. Например, при копировании всего одной ячейки Ёкселя, происходит загрузка более 30 форматов клипборда. Где-то там есть и фонты :)


 
Oleg)   (2004-04-23 12:04) [2]

Вот выяснил: если предварительно перед нажатием кнопки перейти на русский шрифт в виндах то все ОК


 
clickmaker ©   (2004-04-23 12:07) [3]

procedure SetClipboardText(const S: string);
 var
   wsz: PWideChar;
   dwSize: Cardinal;
   hData: Cardinal;
 begin
   if (Win32Platform = VER_PLATFORM_WIN32_NT) then begin

     dwSize := (Length(S)+1) * SizeOf(WideChar);
     hData := GlobalAlloc(GMEM_MOVEABLE or GMEM_DDESHARE, dwSize);
     wsz := PWideChar(GlobalLock(hData));
     StringToWideChar(S, wsz, Length(S)+1);
     GlobalUnlock(hData);
     Clipboard.SetAsHandle(CF_UNICODETEXT, hData);
   end else
     Clipboard.AsText := S;
 end;


 
Oleg)   (2004-04-23 12:26) [4]

>clickmaker ©
Спасибо, это работает
А вот еще решение: исполльзовать richedit вместо мемо



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

Текущий архив: 2004.04.11;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.051 c
8-1072046646
ZZZzzzz
2003-12-22 01:44
2004.04.11
Компоненты для работы с графикой


1-1082381323
Феликс М.
2004-04-19 17:28
2004.04.11
Печать как из Ворда


3-1081539621
Mishenka
2004-04-09 23:40
2004.04.11
Как удалить поле из таблицы?


14-1079610123
nikitos
2004-03-18 14:42
2004.04.11
Где найти заказчика?


14-1079366915
Mixxxa
2004-03-15 19:08
2004.04.11
Zyxel Omni56K Pro