Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];

Вниз

Как нарисовать METAFILEPICT ?   Найти похожие ветки 

 
GuAV ©   (2005-11-29 01:02) [0]

Сабж. METAFILEPICT получается из HGLOBAL, возвращаемого OleGetIconOfClass.


 
MBo ©   (2005-11-29 07:36) [1]

PlayEnhMetaFile c METAFILEPICT.hMF
или загвоздка в чем-то ином?


 
GuAV ©   (2005-11-30 00:05) [2]


> PlayEnhMetaFile c METAFILEPICT.hMF


Возвращает False, RaiseLastOSError даёт:
System Error.  Code: 6.
Неверный дескриптор.


Дескриптор 0x32260922, mm = 8 = MM_ANISOTROPIC, высота и ширина многоватые для пикселей, но для сотых мм реальные, т.е. структура, похоже, правильная.


 
MBo ©   (2005-11-30 07:54) [3]

Через клипборд попробуй  - т.е. записать туда CF_METAFILEPICT, а считать - CF_ENHMETAFILE


 
MBo ©   (2005-11-30 08:02) [4]

или так:
HEnhMF:=CopyEnhMetafile(PGolbal.hMF,nil);


 
GuAV ©   (2005-11-30 20:44) [5]


> MBo ©   (30.11.05 7:54) [3]


> MBo ©   (30.11.05 8:02) [4]


Ничего не вышло. Мой код:

var h: HGLOBAL; P: PMetafilePict; hMF: THandle;
begin
 h :=  OleGetIconOfClass(
   ProgIDToClassID("Word.Document"), "Test", False);
 P := GlobalLock(h);


 
MBo ©   (2005-11-30 21:20) [6]

Так у меня работает:

var
 h: HGLOBAL;
 m: tmetafile;
begin
 h := OleGetIconOfClass(ProgIDToClassID("Word.Document"), "Test", False);
 Clipboard.SetAsHandle(CF_METAFILEPICT, h);
 m := tmetafile.create;
 m.Assign(clipboard);
 canvas.Draw(0, 0, m);


 
GuAV ©   (2005-11-30 22:42) [7]


> MBo ©   (30.11.05 21:20) [6]


Спасибо.
Выяснил, что или это не та функция, или я её не так вызываю. Мне нужен значок, который виден например в Word при Вставка->Объект->Создание->[x]В виде значка.



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

Форум: "Основная";
Текущий архив: 2005.12.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.014 c
14-1133525165
vrem
2005-12-02 15:06
2005.12.25
xp ругается на размер и показывает знак :)


4-1129894565
shc
2005-10-21 15:36
2005.12.25
Отключение Alt+Tab под ХР


2-1134384927
De1uxe
2005-12-12 13:55
2005.12.25
Работа с битовыми образами


1-1133177680
Dima_dvp
2005-11-28 14:34
2005.12.25
Динамически подгружать данные в массив


2-1133880218
seleman
2005-12-06 17:43
2005.12.25
Вопрос по сокетам





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский