Блог по программированию в среде Delphi

Поиск по блогу

Есть идея по созданию интересной программы?

Опиши тут и я по возможности постараюсь это реализовать специально для тебя! Без $ ))

вторник, 20 июля 2010 г.

Delphi Gif

Компонент не визуальный, позволяющий отображать на форме GIF-изображения без всяких таймеров.
Для того чтобы ваше приложение научилось работать с  GIF-изображениями необходимо просто прописать gifimage в uses  и в процессе работы приложения в обычный Timage загрузить GIF-изображение.

Компонент Gifimage можно скачать осюда

Видео урок по этому компоненту здесь. 

Drawobjects (delphi)

Drawobjects графическая библиотека для рисовая планов, схем. Прекрасная библиотека для реализации графических редакторов типа Visio или редакторов блок схем и самое главное компонент идет с исходными текстами модулей. В комплект поставки библиотеки так же включены демо примеры по которым при желании можно разобраться и написать, что то свое.


Компонент Drawobjects можно скачать отсюда download

Atimagebox (Delphi)

Компонент Atimagebox для Delphi/C++Builder, показывающий изображение в прокручиваемой области. Компонент имеет такие полезные свойства как ImageFitToWindow, ImageCenter, ImageScale и т.д., поэтому с помощью него очень удобно отображать изображения.
Практически часть просмоторщика картинок реализована за вас. (при проверке работал компонент шустро. по край не мере в демке )


Компонент Atimagebox можно скачать отсюда download

Shapedform

Компонент для среды Delphi который по заданной картинке маске формирует регион формы.
С помощью этого компонента можно создать Форму любой формы)))
Пример использования компонента.
Буквы на рабочем столе это форма приложения которую можно так же закрыть, переместить и все, что с обычной формой, просто эта форма не квадратная.
В общем область использования этого компонента ограничивается лишь вашим воображением


Скачать компонент Shapedform можно отсюда download

TKMAlert (Delphi)

Компонент реализующий всплывающее окошко, как у программы Qip
Можно использовать для оповещения пользователя о наступлении какого либо события, которое не будет ему мешать заниматься делами и для того, чтобы закрыть окошко ему просто будет достаточно щелкнуть левой кнопкой мыши в его области и оно скроется с глаз долой и будет ждать своей участи.


Компонент тестировался на Delphi 7 все прекрасно работало.
Скачать можно отсюда DOWNLOAD

понедельник, 19 июля 2010 г.

Synchronize

Используется для синхронизации потоков. Важно помнить, что параметром Synchronize (параметр)
может быть метод без параметров.
Запись типа  Synchronize(myProcedure(fdsf)); будет расценена как ошибка, а Synchronize(myProcedure) будет работать, как надо.

понедельник, 12 июля 2010 г.

Удивительное рядом

В процессе разработки компонента с использованием потоков обратил внимание на вставку кода которую использовал программер, который писал подобный компонент для работы с сетью и периодически делал вставку вот этого кода

while PeekMessage(msg,0,0,0,PM_REMOVE) do
begin
  TranslateMessage(msg);
  DispatchMessage(msg);
end;

решил разобраться, что же делает этот код, оказалось, что ни чего сверх естественного в нем нет
Проще говоря это даже всем известный код, который мы ни раз использовали в местах где могут происходит зависания формы. Ладно не буду томить это код   Application.ProcessMessages;

воскресенье, 27 июня 2010 г.

GetLastError

function GetLastError: DWORD; stdcall;

Функция возвращает значение последней ошибки в потоке.

Пример
begin
   if DeleteFile('CanDeletMe.txt') then
     ShowMessage('Файл удален')
   else
     ShowMessage('Файл не удален, код ошибки = '+IntToStr(GetLastError));
end;

InternetCloseHandle

Закрытие дескриптора любой функции Wininet

Синтаксис Delphi

function InternetCloseHandle(hInet: HINTERNET): BOOL; stdcall;


hInet Дескриптор который необходимо закрыть.

Возвращает True если дескриптор закрыт успешно, в противном случае False для получения дополнительной информации вызовите функцию GetLastError

InternetReadFile

Чтение результатов выполнения функций InternetOpenUrl, FtpOpenFile или HttpOpenRequest

Синтаксис Delphi

function InternetReadFile(hFile: HINTERNET; lpBuffer: Pointer;
                         dwNumberOfBytesToRead: DWORD;
                         var lpdwNumberOfBytesRead: DWORD): BOOL; stdcall;

hFile     Дескриптор сессии, полученный вызовом функции.
lpBuffer  Адрес буфера в который будут записаны данные
dwNumberOfBytesToRead  Размер буфера в который будут записаны данные.
lpdwNumberOfBytesRead  Число прочитанных байт.