Дата добавления: 08.08.2009
Что нового по сравнению с версией 2.3?
Компоненты TdpTrayIcon и TdpMeleeTrayIcon подверглись модернизации, но не большой (исправлены мелкие ошибки). TdpChoiceSpectr переименован в TdpSpectr (так в принципе и должно было быть) и тоже был подвержен модернизации (много лишнего в нём было). Исправлена ошибка в названии компонента TdpColourSpectr (недоставало буквы "u"). Компонент TdpGradSpectr удален из за лёгкости его создания (куча ненужного кода). TdpPipetteShape теперь потомок TShape. Добавлены компоненты TdpButton (кнопка), TdpBalloon (воздушный шар), TdpBalloonButton (кнопка закрыть для TdpBalloon), TdpDirectoryChange (позволяет ловить директивные изменения, пришёл на смену класса TdpFileChange), TdpNotice (сплывающее сообщение - можно формировать в дизайне), TdpTrayNotice (своё сообщение в Notification area). Совместимость Delphi 4, 5, 6, 7, 9, 10, 11, 12.
Другие версии: dp7lib v.2.0; dp7lib v.2.3
Скачиваний: 1981 | Просмотров: 7935 | Комментариев: 21 | Рейтинг материала: 4.8
Автор: Иван
Рейтинг: 4.8/10 |
dp7lib 3.3 - выход намечен на июль или август 2011 г.
Совместимость с Delphi 4 по 2010. Совместимость с C++ Builder 4 по 2010. Проверил - на всех работает. Сейчас у меня сессия, поэтому времени будет не хватать. Предстоит много сдавать экзаменов, ргз и курсовых: Организация и планирования производства. Методы и средства защиты компьютерной информации. Архитектура вычислительных процессов. Проектирование и создание баз данных (MS SQL Server). И т. д. |
Delphi:
procedure TForm1.FormCreate(Sender: TObject); Builder: void __fastcall TForm1::FormCreate(TObject *Sender) |
Звесев все за и против пришёл к такому строению модулей (3.3):
dpLib.pas (*$HPPEMIT 'namespace Dplib' *) ... (*$HPPEMIT '#define _RT_DEFAULT 0x0000' *) {$NODEFINE GetCalcRect} (*$HPPEMIT 'MFCSAPI(BOOL) GetCalcRect(const Windows::TRect &Bounds, System::Longint nWidth, System::Longint nHeight, Windows::TRect &lprc, System::Word Flags);' *) ... dpSysTray.pas (*$HPPEMIT 'namespace Dpsystray' *) const (*$HPPEMIT '#define _NIM_ADD 0x00000000' *) ... {$NODEFINE TDummyUnionName} (*$HPPEMIT 'struct TDummyUnionName' *) {$NODEFINE PNotifyIconDataA2} (*$HPPEMIT 'struct TNotifyIconDataA2' *) ... _NIM_ADD - Выбрано не случайно. Если объявить NIM_ADD как Чтобы не засорять сайт админа разным словесным мусором думаю |
После небольших поправок dpLib.pas (3.3):
const (*$HPPEMIT 'static const System::Shortint _BK_LEFTBOTTOM = 0x0;' *) {$NODEFINE CreateBalloonRgn} (*$HPPEMIT 'MFCSAPI(HRGN) CreateBalloonRgn(System::Longint bkSpace, System::Longint bkNose, System::Longint bkCorner, System::Longint bkBend, System::Byte bkCalc,' *) ... {$NODEFINE GetDllVersionInfoA} (*$HPPEMIT 'MFCSAPI(BOOL) GetDllVersionInfoA(System::PAnsiChar lpLibName, PDllVersionInfo lpdvi);' *) {$NODEFINE GetDllVersionInfoW} (*$HPPEMIT 'MFCSAPI(BOOL) GetDllVersionInfoW(System::PWideChar lpLibName, PDllVersionInfo lpdvi);' *) {$NODEFINE GetDllVersionInfo} (*$HPPEMIT '#ifdef UNICODE' *) Пока компилиться и Builder ошибок не выдаёт. |
Сейчас уже могу выделить существенную часть dpLib.pas (3.3):
type (*$HPPEMIT 'struct TDllVersionInfo' *) {$NODEFINE GetDllVersionInfoA} (*$HPPEMIT 'MFCSAPI(BOOL) GetDllVersionInfoA(PAnsiChar lpLibName, PDllVersionInfo lpdvi);' *) {$NODEFINE GetDllVersionInfoW} (*$HPPEMIT 'MFCSAPI(BOOL) GetDllVersionInfoW(PWideChar lpLibName, PDllVersionInfo lpdvi);' *) {$NODEFINE GetDllVersionInfo} (*$HPPEMIT '#ifdef UNICODE' *) Некоторые части описываю сам, т.к. dcc32 не всегда создаёт верные данные в загаловочном файле. Зависимость dpLib.pas: mfcs32.dll, mfcs32.lib (всё будет включенно). Не будет модуля dpSysNot.pas в котором описан компонент TdpTrayBalloon. Идея была хорошей, TdpTrayIcon - небольшие улучшения. В частности можно будет указать размер структуры самому. TdpTrayIcon.DataSize := NOTIFYICONDATA_V2_SIZE; Как это в принципе и было в версии 3.1 (TdpMeleeTrayIcon, TdpXPTrayIcon, TdpLaterTrayIcon). |
dp7lib v. 3.3
+ C++Builder 5 + C++Builder ? :: dpLib.pas function CreateBalloonRgn(bkSpace, bkNose, bkCorner, bkBend: Longint; bkCalc: Byte; function GetNotifyStructData(hWnd: HWnd; nIndex: Longint; lpData: PNotifyStructData; cbSize: DWORD): BOOL; stdcall; function GetDllVersionInfoW(lpLibName: PWideChar; lpdvi: PDllVersionInfo): BOOL; stdcall; function GetNotifyIconRect(hWnd: HWnd; nIndex: Longint; var lprc: TRect): BOOL; stdcall; function GetDllVersionW(lpLibName: PWideChar; var lpMakeVersion: Longint): BOOL; stdcall; function GetCalcRect(const Bounds: TRect; nWidth, nHeight: Longint; var lprc: TRect; Flags: Word): BOOL; stdcall; function GetNotifyIconCount(hWnd: HWnd): Longint; stdcall; function SquareInSquare(const Dst, Src: TRect): BOOL; stdcall; и т.д. :: |
dp7lib v. 3.3
Наконец добавил возможность установки на C++Builder. |
Какая вам версия понравилась больше ? 3.0, 3.1, 3.2. О ранних версиях я молчу, т.к. начинал писать ещё на 1 курсе инс. За плечами 2 года в учебном центре 'Дельта Инженеринг'. 7 лет прошло, а я так и не закончил пока инс. 2 раза отчисляли. Зато наград от инс. выше крыши, хоть туалет обклей. Параллельно инс. закончил 5 училище - сейчас спрашиваю себя для чего. Ну ладно, о чём это я. Планирую доработать версию 3.2 до 3.3. Версия 4.0 будет уже в новом качестве - будет больше возможностей. Вы наверно спросите зачем мне всё это - наверно я творческий челдобрек.
|
TdpColourSpectr - мне так больше нравиться. Заодно пополняем новыми фразами английский язык.
|
6. viso
>Исправлена ошибка в названии компонента TdpColourSpectr (недоставало буквы "u").
В разных вариантах английского слово color пишется по-разному, в американском как color, а в оригинальном как colour |
Copyright © 2008 - 2018 Программирование на Delphi для начинающих и не только.
Полнота авторских прав на все материалы, опубликованные на сервере DelphiDevelop.ru принадлежит их авторам.
Перепечатка материалов разрешается с указанием авторства и гиперссылки на первоисточник информации.