Мастера DELPHI, Delphi programming community Рейтинг@Mail.ru Титульная страница Поиск, карта сайта Написать письмо 
| Новости |
Новости сайта
Поиск |
Поиск по лучшим сайтам о Delphi
FAQ |
Огромная база часто задаваемых вопросов и, конечно же, ответы к ним ;)
Статьи |
Подборка статей на самые разные темы. Все о DELPHI
Книги |
Новинки книжного рынка
Новости VCL
Обзор свежих компонент со всего мира, по-русски!
|
| Форумы
Здесь вы можете задать свой вопрос и наверняка получите ответ
| ЧАТ |
Место для общения :)
Орешник |
Коллекция курьезных вопросов из форумов
KOL и MCK |
KOL и MCK - Компактные программы на Delphi

Дата: 02.06.00


При выполнении диалога FontDialog со свойством Device равным fdBoth or fdPrinter, появляется ошибка "There are no fonts installed".


Эти установки должны показать шрифты совместимые либо с принтером либо с экраном. В примере диалог Windows ChooseFont вызывается напрямую чтобы показать список шрифтов, совместимых одновременно и с экраном и с принтером.
Пример:

uses Printers, CommDlg;

procedure TForm1.Button1Click(Sender: TObject);
var
   cf : TChooseFont;
   lf : TLogFont;
   tf : TFont;
begin
   if PrintDialog1.Execute then
       begin
           GetObject(Form1.Canvas.Font.Handle, sizeof(lf),@lf);
           FillChar(cf, sizeof(cf), #0);
           cf.lStructSize := sizeof(cf);
           cf.hWndOwner := Form1.Handle;
           cf.hdc := Printer.Handle;
           cf.lpLogFont := @lf;
           cf.iPointSize := Form1.Canvas.Font.Size * 10;
           cf.Flags := CF_BOTH or CF_INITTOLOGFONTSTRUCT or
               CF_EFFECTS or CF_SCALABLEONLY or CF_WYSIWYG;
           cf.rgbColors := Form1.Canvas.Font.Color;
           if ChooseFont(cf) <> false then
               begin
                   tf := TFont.Create;
                   tf.Handle := CreateFontIndirect(lf);
                   tf.COlor := cf.RgbColors;
                   Form1.Canvas.Font.Assign(tf);
                   tf.Free;
                   Form1.Canvas.TextOut(10, 10, 'Test');
               end;
       end;
end;



Источник: Дельфи. Вокруг да около.


Чтобы вернуться оцените этот вопрос/ответ:
   

Прислать свои комментарии


Новое на сайте

Наверх

  Рейтинг@Mail.ru     Титульная страница Поиск, карта сайта Написать письмо