Р а з д е л ы
Новости
Гостевая
Форум
Чат
Учебники
Программы
Статьи по Delphi
Статьи по Html
Компьютерные статьи
Java скрипты
Приколы
Отправить SMS
Мои разработки
 
К о н т а к т ы

ICQ: 445511525
e-mail: ZORBI@bk.ru

c o p y r i g h t
p r o g r a m m i n g
d e s i g n e d
by ZORBI

Т р о и ц к   г

 
С с ы л к и


 
С ч е т ч и к и
Rambler's Top100
 
..:: Статьи ::..
Проблемы копирования русского текста в clipboard и обратно

   У многих возникает проблема с копированием русского
   текста в буфер обмена на ОС Win2000 и WinXP а может
   и Win9x. Простого и надежного решения данной проблемы
   найти, к сожалению, не удалось :-(
   Представляю модуль который поможет решить проблему
   копирования русского текста в clipboard и обратно. 

   Нужно просто добавить в проект ... 
								  
   unit RusClipboard;

   interface

   uses Clipbrd;

   type
     TRusClipboard = class(TClipboard)
      private
       procedure SetCodePage(const CodePage: longint);
      public
       procedure Open; override;
       procedure Close; override;
     end;

   implementation

   uses Windows;

   { TRusClipboard }

   procedure TRusClipboard.Close;
   begin
     SetCodePage($0419);
     inherited;
   end;

   procedure TRusClipboard.Open;
   begin
     inherited;
     SetCodePage($0419);
   end;

   procedure TRusClipboard.SetCodePage(const CodePage: longint);
   var Data: THandle;
       DataPtr: Pointer;
   begin
     // Назначить кодовую страницу для буфера обмена
     Data:= GlobalAlloc(GMEM_MOVEABLE + GMEM_DDESHARE, 4);
     try
       DataPtr := GlobalLock(Data);
       try
         Move(CodePage, DataPtr^, 4);
         SetClipboardData(CF_LOCALE, Data);
        finally
         GlobalUnlock(Data);
       end;
      except
       GlobalFree(Data);
     end;
   end;

   var FClipboard: TClipboard;
       OldClipboard: TClipboard;

   initialization
     // Установить клипборд
     FClipboard:= TRusClipboard.Create;
     OldClipboard:= SetClipboard(FClipboard);
     if OldClipboard <> nil then
       OldClipboard.Free;

   end.
	             		

Источник: www.delphikingdom.ru  

Hosted by uCoz