Для того, чтобы понять принцип работы компонента и получить желаемый результат мы как и все уважающие других программистов и их время сделали Demo проект в котором все, что делает компонент можно не только увидеть, но и посмотреть, как все это дело реализовано.
Внешний вид Demo проекта
Как видим вроде ни чего экстраординарного все просто и со вкусом
На форме имеем 3 кнопки, по средством которых и происходит либо авторизация пользователя, очистка памяти занимаемой компонентом (уничтожение его (после этого доступ к нему не возможен и вызовет исключительную ситуацию)) и авторизация с капчей.
Есть идея по созданию интересной программы?
пятница, 30 июля 2010 г.
GoogleLogin Delphi часть 2
Ярлыки:
GoogleLogin
И так в предыдущей статье посвященной GoogleLogin я описал практически все, что было необходимо, но не описал методов нашего компонента. На сегодняшний день компонент претерпел некоторые изменения и я не стал удалять старую статью, а решил оставить ее для того, чтобы четко было видно отличия компонента от версии к версии.
Свойства компонента GoogleLogin
Свойства компонента остались практически без изменений, появилось лишь дополнительное поле Captha
Свойства компонента GoogleLogin
Свойства компонента остались практически без изменений, появилось лишь дополнительное поле Captha
вторник, 27 июля 2010 г.
Функция по загрузке jpg в Timage (Delphi)
Не скажу, что прям моя разработка, но к ней я свою корявую руку приложил))
//непосредственно сама функция по загрузке картинки формата jpg из сети интернет
//для работы функции необходимо добавить в uses ... wininet, Jpeg;
//непосредственно сама функция по загрузке картинки формата jpg из сети интернет
//для работы функции необходимо добавить в uses ... wininet, Jpeg;
function GetImage(url:string): TPicture;
var
hInternet, hConnect: pointer;
dwBytesRead, i, L: cardinal;
sTemp,aUrl: AnsiString; // текст страницы
memStream: TMemoryStream;
jpegimg: TJPEGImage;
begin
hInternet := InternetOpen('MyApp', INTERNET_OPEN_TYPE_PRECONFIG, nil, nil, 0);
try
if Assigned(hInternet) then
begin
hConnect := InternetOpenUrl(hInternet, PChar(url), nil, 0, 0, 0);
if Assigned(hConnect) then
try
i := 1;
repeat
SetLength(sTemp, L + i);
if not InternetReadFile(hConnect, @sTemp[i], sizeof(L),dwBytesRead) then
break; // Получаем данные с сервера
inc(i, dwBytesRead);
until dwBytesRead = 0;
finally
InternetCloseHandle(hConnect);
end;
end;
finally
InternetCloseHandle(hInternet);
end;
memStream := TMemoryStream.Create;
jpegimg := TJPEGImage.Create;
try
memStream.Write(sTemp[1], Length(sTemp));
memStream.Position := 0;
//загрузка изображения из потока
jpegimg.LoadFromStream(memStream);
Result:=TPicture.Create;
Result.Assign(jpegimg);
finally
//очистка
memStream.Free;
jpegimg.Free;
end;
end;
среда, 21 июля 2010 г.
GoogleLogin Delphi
Ярлыки:
GoogleLogin
Доброго времени суток)))
Сегодня мы обсудим компонент googleLogin написанный Владиславом Баженовым aka Vlad (его сайт), ну и я его немного доработал (хотя для кого-то может, сделал его хуже)
Короче как бы то ни было, но я решил рассказать о нем подробнее, чтобы любой программист смог его применить по назначению и получить максимум из того, что в нем реализовано
Установка компонента в Delphi 2010
Для установки компонента необходимо зайти в папку googleapi\packages\googleLogin_pack
в ней найти файл GoogleLogin.dpk открыть его в среде Delphi 2010 (он был написан в ней)
в настройках среды прописать переменные окружения, в общем указать путь (где то на диске)\googleapi\packages\googleLogin_pack\ после чего в менеджере проекта нажать на надписи GoogleLogin.bpl правой клавишей мыши и выбрать пункт меню Install после чего если вы все сделали правильно должно появиться окно с информацией о том, что компонент успешно установлен в систему
Сегодня мы обсудим компонент googleLogin написанный Владиславом Баженовым aka Vlad (его сайт), ну и я его немного доработал (хотя для кого-то может, сделал его хуже)
Короче как бы то ни было, но я решил рассказать о нем подробнее, чтобы любой программист смог его применить по назначению и получить максимум из того, что в нем реализовано
Установка компонента в Delphi 2010
Для установки компонента необходимо зайти в папку googleapi\packages\googleLogin_pack
в ней найти файл GoogleLogin.dpk открыть его в среде Delphi 2010 (он был написан в ней)
в настройках среды прописать переменные окружения, в общем указать путь (где то на диске)\googleapi\packages\googleLogin_pack\ после чего в менеджере проекта нажать на надписи GoogleLogin.bpl правой клавишей мыши и выбрать пункт меню Install после чего если вы все сделали правильно должно появиться окно с информацией о том, что компонент успешно установлен в систему
Установка компонентов в среду Delphi 7
Ярлыки:
IDE
Для того чтобы установить компонент в среду Delphi, который идет с файлом [nameComponent].dpk необходимо выполнить следующие действия.
Выполнить двойной клик на файле [nameComponent].dpk после чего откроется среда разработки с окном Package - [nameComponent].dpk
Пример окна
В нем мы видим кнопки Compile, Add, Remove, Install, Options
Кнопка Compile компилирует как это понятно из названия компонент (иногда это требуется перед установкой специфических компонентов)
Кнопка Add добавляет файлы к пакету компонента, а кнопка Remove в свою очеред удаляет файлы из пакета в основном они нужны только для разработчиков компонентов.
Кнопка Install необходима для установки компонента в среду разработки.
Кнопка Options вызывает окно настройки пакета компонента
Выполнить двойной клик на файле [nameComponent].dpk после чего откроется среда разработки с окном Package - [nameComponent].dpk
Пример окна
В нем мы видим кнопки Compile, Add, Remove, Install, Options
Кнопка Compile компилирует как это понятно из названия компонент (иногда это требуется перед установкой специфических компонентов)
Кнопка Add добавляет файлы к пакету компонента, а кнопка Remove в свою очеред удаляет файлы из пакета в основном они нужны только для разработчиков компонентов.
Кнопка Install необходима для установки компонента в среду разработки.
Кнопка Options вызывает окно настройки пакета компонента
вторник, 20 июля 2010 г.
Сollapsepanel (Delphi)
Ярлыки:
Компоненты
NewSpeedButton (Delphi)
Ярлыки:
Компоненты
TNewSpeedButton (LSSpeedButton) - Кнопка, подобная той, что используется в программе QIP Infium. Классные кнопочки для delphi. Неприхотливые в установке меня очень порадовали
Можно использовать для создания оригинального интерфейса с минимальным количеством кнопок на главной форме сочетающих в себе выпадающие списки, при грамотном использовании которых интерфейс станет интуитивно понятен и прост в обращении.
Скачать NewSpeedButton можно отсюда download
Можно использовать для создания оригинального интерфейса с минимальным количеством кнопок на главной форме сочетающих в себе выпадающие списки, при грамотном использовании которых интерфейс станет интуитивно понятен и прост в обращении.
Скачать NewSpeedButton можно отсюда download
ImageButton (Delphi)
Ярлыки:
Компоненты
Pngcp (Delphi)
Ярлыки:
Компоненты
Freebutton (Delphi)
Ярлыки:
Компоненты
Userslistbox_28 (Delphi)
Ярлыки:
Компоненты
SYSinfo (Delphi)
Ярлыки:
Компоненты
CX_cpu (delphi)
Ярлыки:
Компоненты
HotKeyManager (Delphi)
Ярлыки:
Компоненты
С помощью этого компонента можно реализовать в своих программах глобальные горячие клавиши без написания большого количества кода. Так же комбинация горячих клавиш не обязательно должна состоять из двух , она может быть и их трех одновременно нажатых клавиш.
В комплекте пример использования и сам компонент
Coolhints2k Delphi
Ярлыки:
Компоненты
Сbasyncdirscan (Delphi)
Ярлыки:
Компоненты
Компонент Cbasyncdirscan реализует много поточный поиск по директориям на вашем пк.
PNG Delphi
Ярлыки:
Компоненты
Delphi7 не работает с PNG, но с этой библиотекой будет. Этот модуль облегчил жизнь многим программистам у которых появилась необходимость использовать PNG изображения в своих проектах, который позволяет в обычный Image грузить PNG изображения. В общем очень удобная вещь с pngButton который идет в качестве примера использования их модуля в VCL
Скачать PNGDelphi7 можно отсюда download
Скачать PNGDelphi7 можно отсюда download
Delphi Gif
Ярлыки:
Компоненты
Компонент не визуальный, позволяющий отображать на форме GIF-изображения без всяких таймеров.
Для того чтобы ваше приложение научилось работать с GIF-изображениями необходимо просто прописать gifimage в uses и в процессе работы приложения в обычный Timage загрузить GIF-изображение.
Компонент Gifimage можно скачать осюда
Видео урок по этому компоненту здесь.
Drawobjects (delphi)
Ярлыки:
Компоненты
Drawobjects графическая библиотека для рисовая планов, схем. Прекрасная библиотека для реализации графических редакторов типа Visio или редакторов блок схем и самое главное компонент идет с исходными текстами модулей. В комплект поставки библиотеки так же включены демо примеры по которым при желании можно разобраться и написать, что то свое.
Компонент Drawobjects можно скачать отсюда download
Компонент Drawobjects можно скачать отсюда download
Atimagebox (Delphi)
Ярлыки:
Компоненты
Компонент Atimagebox для Delphi/C++Builder, показывающий изображение в прокручиваемой области. Компонент имеет такие полезные свойства как ImageFitToWindow, ImageCenter, ImageScale и т.д., поэтому с помощью него очень удобно отображать изображения.
Практически часть просмоторщика картинок реализована за вас. (при проверке работал компонент шустро. по край не мере в демке )
Компонент Atimagebox можно скачать отсюда download
Практически часть просмоторщика картинок реализована за вас. (при проверке работал компонент шустро. по край не мере в демке )
Компонент Atimagebox можно скачать отсюда download
Shapedform
Ярлыки:
Компоненты
Компонент для среды Delphi который по заданной картинке маске формирует регион формы.
С помощью этого компонента можно создать Форму любой формы)))
Пример использования компонента.
Буквы на рабочем столе это форма приложения которую можно так же закрыть, переместить и все, что с обычной формой, просто эта форма не квадратная.
В общем область использования этого компонента ограничивается лишь вашим воображением
Скачать компонент Shapedform можно отсюда download
С помощью этого компонента можно создать Форму любой формы)))
Пример использования компонента.
Буквы на рабочем столе это форма приложения которую можно так же закрыть, переместить и все, что с обычной формой, просто эта форма не квадратная.
В общем область использования этого компонента ограничивается лишь вашим воображением
Скачать компонент Shapedform можно отсюда download
TKMAlert (Delphi)
Ярлыки:
Компоненты
Компонент реализующий всплывающее окошко, как у программы Qip
Можно использовать для оповещения пользователя о наступлении какого либо события, которое не будет ему мешать заниматься делами и для того, чтобы закрыть окошко ему просто будет достаточно щелкнуть левой кнопкой мыши в его области и оно скроется с глаз долой и будет ждать своей участи.
Компонент тестировался на Delphi 7 все прекрасно работало.
Скачать можно отсюда DOWNLOAD
Можно использовать для оповещения пользователя о наступлении какого либо события, которое не будет ему мешать заниматься делами и для того, чтобы закрыть окошко ему просто будет достаточно щелкнуть левой кнопкой мыши в его области и оно скроется с глаз долой и будет ждать своей участи.
Компонент тестировался на Delphi 7 все прекрасно работало.
Скачать можно отсюда DOWNLOAD
понедельник, 19 июля 2010 г.
Synchronize
Ярлыки:
Thread
Используется для синхронизации потоков. Важно помнить, что параметром Synchronize (параметр)
может быть метод без параметров.
Запись типа Synchronize(myProcedure(fdsf)); будет расценена как ошибка, а Synchronize(myProcedure) будет работать, как надо.
может быть метод без параметров.
Запись типа Synchronize(myProcedure(fdsf)); будет расценена как ошибка, а Synchronize(myProcedure) будет работать, как надо.
понедельник, 12 июля 2010 г.
Удивительное рядом
Ярлыки:
Application
В процессе разработки компонента с использованием потоков обратил внимание на вставку кода которую использовал программер, который писал подобный компонент для работы с сетью и периодически делал вставку вот этого кода
while PeekMessage(msg,0,0,0,PM_REMOVE) do
begin
TranslateMessage(msg);
DispatchMessage(msg);
end;
решил разобраться, что же делает этот код, оказалось, что ни чего сверх естественного в нем нет
Проще говоря это даже всем известный код, который мы ни раз использовали в местах где могут происходит зависания формы. Ладно не буду томить это код Application.ProcessMessages;
while PeekMessage(msg,0,0,0,PM_REMOVE) do
begin
TranslateMessage(msg);
DispatchMessage(msg);
end;
решил разобраться, что же делает этот код, оказалось, что ни чего сверх естественного в нем нет
Проще говоря это даже всем известный код, который мы ни раз использовали в местах где могут происходит зависания формы. Ладно не буду томить это код Application.ProcessMessages;
Подписаться на:
Сообщения (Atom)