FoxPro Club Главная

Конференция Решения Фотоальбом Сайт М.Дроздова Статьи Файловый архив Книга Visual FoxPro 9.0 Русский Help для Visual FoxPro
Пользователей: 9176
Вход
Использование структур в функциях Windows API

На примере работы с CheckBox'ами в элементе управления Windows TreeView продемонстрировано использование новых возможностей VFP 9 для работы со структурами Windows API практически любой сложности, используемыми для передачи и возврата параметров в/из Win API-функций.


 
Прислал: Кольцов Роман Васильевич   Категория: Инструменты разработчика


Здесь приводится адаптированный и переведенный с Visual Basic на Visual FoxPro 9 код
из статьи Брэда Мартинеса (Brad Martinez) "SetWindowLong: Add TreeView
Check Boxes via API", опубликованной на сайте
http://vbnet.mvps.org/index.html?code/comctl/tvcheckbox.htm.
В примере показан способ работы со структурами Windows API любой сложности лишь средствами
встроенными в Visual FoxPro 9, без использования дополнительных классов и FLL.

Продемонстрировано использование новых возможностей VFP 9, описанных в главе 14
"Language Improvemens" на стр. 312 книги "What's New In Nine"
издательства Hentzenwerke, доступной на сайте Microsoft online,
а так же описанных в разделе "Формирование структур в Visual FoxPro"
статьи Вячеслава Клепинина "Введение в Windows API", размещенной на сайте:
http://www.codenet.ru/db/vfp/winapi/
(если данный сайт недоступен, то воспользовавшись поиском Google можно
получить ссылку на кэшированную сервисом Google копию данной страницы)

Для определения WinAPI структур в примере НЕ ИСПОЛЬЗУЕТСЯ подключаемый к
проекту Struct.vcx с сайта: http://kodu.neti.ee/~juri4/examples/struct.zip
(195,892 байта), т.к. класс struct требует Convert.FLL, а загромождать
проект дополнительными, да еще и чужими файлами FLL желание отсутствует!
К тому же библиотека Convert.FLL содержит только некоторые конверсионные
функции необходимые для преобразования числовых величин в бинарные строки,
как это требуется для функций API. А в версии VFP9, движок это прекрасно
выполняет сам (см. описание измененных функций CTOBIN и BINTOC)!

В примере так же НЕ ИСПОЛЬЗУЕТСЯ класс rAPIdStructure, описанный в статье
Emanuele Cerlini "A way to work with Visual FoxPro and API Structures",
являющийся адаптером для API-структур, со времен VFP7 и далее,
ознакомиться с которым можно по ссылке:
http://www.foxitaly.com/ecerlini/struttureapi_en.html

Перевод, адаптацию статьи под VFP и написание кода VFP9 выполнил:
Кольцов Роман Васильевич
mailto: Roman.Koltsov@gmail.com
tel: +7 4752 751645 (home)
fax: +7 4752 713406 (work)
ICQ: 44612299

 
Сделайте оценку этого решения Плохо Удовлетворительно Так себе Хорошо Отлично Текущая оценка: (2) Вложение [18.51]kb
Дополнения пользователей
Использование структур в функциях Windows API
[+][?]
[Дополнить]



© 2000-2017 Fox Club 
При размещении любых материалов с сайта на других ресурсах- прямая ссылка на www.foxclub.ru обязательна
Яндекс.Метрика