Форум программистов, компьютерный форум, киберфорум
Alex_pac
Войти
Регистрация
Восстановить пароль
Старый
Рейтинг: 5.00. Голосов: 1.
Delphi Простая градиентная заливка на WinApi
Запись от Alex_pac размещена 10.11.2012 в 05:05
Показов 11122 Комментарии 0
Метки delphi, winapi

Процедура градиентной заливки из 2 цветов

http://msdn.microsoft.com/en-u... 85%29.aspx << сабж

На самом деле можно еще заливать треугольником и не только 2 цветами, а гораздо больше, но в целях простоты только прямоугольник и 2 цвета стандарта TColor

А теперь о подводных камнях.

1) процедура в Delphi 7 объявлена неверно. Об этом тут >> http://edn.embarcadero.com/ru/article/38354

Раз она...
Аватар для Alex_pac
Старый
Рейтинг: 4.00. Голосов: 1.
Использование ресурсов в Delphi
Запись от Alex_pac размещена 05.11.2012 в 22:29
Показов 13134 Комментарии 3
Метки delphi

Решил я написать свой взгляд на ресурсы.
Во первых ограничим список того что вообще можно считать ресурсом.

1) Картинки
2) Файлы различных форматов
3) Курсоры
4) Шрифты

И вот вобщем то и все. Со строками удобнее работать через INI файлы или XML. Так что строки как ресурсы лучше не использовать имхо.

*********************

Использование ресурсов в Delphi
Компилятор brcc32.exe можно найти...
Аватар для Alex_pac
Старый
Курсор из Windows 8
Запись от Alex_pac размещена 05.11.2012 в 19:50
Показов 7041 Комментарии 0
Метки windows

Кто хочет может освежить курсор в своей ОС

Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 900
Размер:	64.5 Кб
ID:	1462

у кого стоит XP вот курсоры из семерки

Cursors_win7.rar

у кого стоит семерка скачивать курсоры для 7 не нужно
Аватар для Alex_pac
Старый
Синхронизированная сортировка строковых листов
Запись от Alex_pac размещена 04.11.2012 в 13:39
Показов 4166 Комментарии 1
Метки delphi

Представляю процедуры для синхронизации сортировок строковых листов

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
type
IntArray = array of integer;
 
procedure StrListReIndex(str:TStrings; var index:IntArray);
var i:integer; t: TStringList;
begin
   t:=TStringList.Create;
   t.AddStrings(str);
   str.Clear;
   for i := 0 to t.Count - 1 do
     str.Add(t[index[i]]);
   t.Free;
end;
 
 
procedure StrListSortSaveIndex(str:TStrings;
...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 2.
Устанавливаем события на TGauge
Запись от Alex_pac размещена 29.10.2012 в 11:02
Показов 5705 Комментарии 0
Метки delphi

Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 756
Размер:	17.0 Кб
ID:	1433

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Gauges;
 
type
  TGauge = class(Gauges.TGauge)
    public
      property OnMouseDown;
  end;
 
  TForm1 = class(TForm)
    Gauge1: TGauge;
    Gauge2: TGauge;
    procedure FormCreate(Sender: TObject);
  private
...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 1.
Delphi M3U ListBox Player
Запись от Alex_pac размещена 20.10.2012 в 05:27
Показов 38371 Комментарии 17
Метки delphi

http://jqbook.net.ru/delphi.html <<-- офф сайт

18.11.12 BassSimple player 2.2

Нажмите на изображение для увеличения
Название: playerSimple.png
Просмотров: 1202
Размер:	589.1 Кб
ID:	1522

BassSimple медиа проигрыватель 2.2

- создание, открытие, сохранение списков в формате M3U
- воспроизведение форматов MP3, Flac, WMA и др
- ассоциация файлов с программой
- фильтрация списков
- Редактор...
Аватар для Alex_pac
Старый
Delphi Копирование файлов из проводника
Запись от Alex_pac размещена 19.10.2012 в 10:54
Показов 6932 Комментарии 2
Метки delphi

Сабж

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
unit uShell;
 
interface
 
// Модуль копирования файлов в буфер для проводника
// протестирован Delphi 7, XE
 
uses Forms, Classes, SysUtils, ShellApi, ShlObj, ClipBrd, Windows;
 
type
  TWinMoveType = (wCopy = 5, wMove = 2); // Копирование или перенос
 
  WinExplorer = class
    // файлы в буфер
...
Аватар для Alex_pac
Старый
Delphi DBGrid Убрать полосы прокрутки
Запись от Alex_pac размещена 10.10.2012 в 17:47
Показов 25538 Комментарии 0
Метки delphi

Итак разберемся с полосами прокрутки в DbGrid

1) способ который цитируется по всему инету

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
TDBGrid = class(DBGrids.TDBGrid)
public
  HorzScroll: boolean; 
  constructor Create(AOwner:TComponent); override;
protected
  procedure Paint; override;
end;
 
implementation
 
constructor TDBGrid.Create(AOwner: TComponent);
begin
  HorzScroll:=false;
  inherited;
end;
...
Аватар для Alex_pac
Старый
Delphi модуль ассоциации файлов
Запись от Alex_pac размещена 26.09.2012 в 01:30
Показов 21022 Комментарии 3
Метки delphi

Протестирован
Windows XP, Windows 7

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
unit FileAssociation;
 
// модуль ассоциации файлов
 
interface
 
uses Windows, SysUtils, Registry, ShlObj;
 
procedure FileAssociate(const Ext, progName: string; Icon: string = ''; ProgPath: string = '');
procedure FileUnAssociate(const Ext, progName:string);
 
implementation
 
procedure FileAssociate(const Ext, progName: string;
...
Аватар для Alex_pac
Старый
Delphi Прилипание форм, модуль Magnetic
Запись от Alex_pac размещена 25.09.2012 в 16:38
Показов 6125 Комментарии 0
Метки delphi

Документация на модуль Magnetic 1.1 Repack 2012

Модуль является чуть переделанной версией класса TMagnetic

Протестировано:
Delphi 7, 10, 15 XE

Windows XP, Windows 7


www.torry.net (TMagnetic Class v.1.0)

Описание на ENG

By Silhwan Hyun. TMagnetic Class is a Delphi version equivalent of Visual Basic "cMagneticWnd" class written by Emil Weiss.

TMagnetic Class enables forms snap
...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 1.
Delphi drag drop файлов в прогамму
Запись от Alex_pac размещена 14.08.2012 в 09:09
Показов 16753 Комментарии 7
Метки delphi

Представляю класс который обеспечит перенос файлов в программу или вынос файлов из нее.

Delphi
1
2
3
4
5
6
7
8
9
10
11
unit DropFileClass;
 
// procedure FromDropFiles(Sender: TObject);
 
{ модуль драг и дроп Файлов из проводника и в проводник Windows
 протестирован Delphi 7, XE
 Исходники
 [url]http://www.webundmobile.de/content/download/7387/137496/file/Listings.zip[/url]
 [url]http://www.delphisources.ru/forum/showthread.php?t=21869[/url]
 
 Repack by Alex_pac Тольятти
...
Аватар для Alex_pac
Старый
Delphi генератор TList списков
Запись от Alex_pac размещена 27.07.2012 в 18:24
Показов 4578 Комментарии 3
Метки delphi

Списки в Delphi позволяют лихо управлятся с различными коллециями объектов.

Однако у класса TList который является базовым ко всем спискам есть недостаток такой что указатели, хранящиеся в нем, не типизированы.

Поэтому чтобы применить TList для хранения однотипных...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 3.
Delphi md5 UTF8 ANSI
Запись от Alex_pac размещена 23.07.2012 в 01:39
Показов 15543 Комментарии 9
Метки delphi

модуль для расчета MD5

кодировки UTF8 ANSI

протестирован : delphi 7, 10, 15 XE . Результаты расчета идентичны php md5

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
unit md5Hash;
 
// Optimized version MD5 by Shade & Arigato, 2005.
// repack by Alex_pac 2012
 
interface
 
uses Windows, SysUtils;
 
function md5UTF8 (buf: UTF8String): AnsiString;
function md5 (buf: AnsiString): AnsiString;
 
implementation
...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 1.
Delphi запуск JavaScript [jsWebBrowser 3]
Запись от Alex_pac размещена 18.07.2012 в 13:13
Показов 14245 Комментарии 1
Метки delphi, javascript

Модуль jsWebBrowser 3

http://jqbook.narod.ru/delphi/javascript.htm <<- официальная страница

Нажмите на изображение для увеличения
Название: jsEmbeded.png
Просмотров: 750
Размер:	46.3 Кб
ID:	946

Модуль позволяет легко и просто использовать JavaScript страницы через стандартный компонент TWebbrowser или TEmbededWB

Имеются функции для легкого обращения к DOM элементам страницы.

В модуле предусмотрены функции по управлению событиями элементов страницы на уровне программы.

Список...
Аватар для Alex_pac
Старый
Delphi функция explode из php
Запись от Alex_pac размещена 11.07.2012 в 02:11
Показов 3912 Комментарии 1
Метки delphi, php

Delphi
1
2
3
4
5
6
7
8
// строку в список (explode)
procedure str_explode(const sDelimiter, sSrc :string; resStr: TStrings; lLimit :integer = -1; bWithEmpty :boolean = true);
// разбивает в массив строку sSrc по разделителю sDelimiter
// lLimit - предел длины массива (-1 - без предела)
// bWithEmpty - разрешать пустые строки
var i, ni, dl :integer;
begin
    dl := Length(sDelimiter);
...
Аватар для Alex_pac
Старый
Рейтинг: 4.67. Голосов: 3.
Delphi работа с Ini Файлами, Модуль IniFileExt
Запись от Alex_pac размещена 07.07.2012 в 03:45
Показов 5917 Комментарии 0
Метки delphi

Документация на модуль IniFileExt 1.0

FAQ по INI файлам

Офф документация на модуль IniFileExt 1.0

Модуль позволяет использовать альтернативные методы для обращения к данным INI файла

Кодирование

Фукнции кодирования и декодирования многострочных текстов в однострочный

Delphi
1
2
3
4
function EncodeText(const text:string):string;
begin
  result:=StringReplace(text,'\','\\',[rfReplaceAll]);
  result:=StringReplace(result,#10,'\r',[rfReplaceAll]);
...
Аватар для Alex_pac
Старый
Delphi Отображение форм на панели задач
Запись от Alex_pac размещена 03.07.2012 в 23:39
Показов 4016 Комментарии 0
Метки delphi

Сабж

Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 769
Размер:	53.3 Кб
ID:	911

показ формы 2
Delphi
1
2
3
4
5
procedure TForm1.Button1Click(Sender: TObject);
begin
  Unit2.Form2.Show;
  ShowWindow(Unit2.Form2.Handle,SW_SHOWNORMAL); // костыль
end;
форма 2 события

Delphi
1
2
3
4
procedure TForm2.FormShow(Sender: TObject);
begin
  SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) or WS_EX_APPWINDOW);
end;
Аватар для Alex_pac
Старый
Delphi Многострочный текст в однострочный
Запись от Alex_pac размещена 20.06.2012 в 13:58
Показов 5924 Комментарии 0
Метки delphi

Можно найти массу применений однострочному тексту.

Например такой текст можно хранить в текстовом файле,
и каждый текст на новой строке, что легко извлекается через TStringList
И при этом структура текстов не меняется.

Вот функции для кодирования и декодирования таких текстов.

Delphi
1
2
3
4
function EncodeText(const text:string):string;
begin
  result:=StringReplace(text,'\','\\',[rfReplaceAll]);
  result:=StringReplace(result,#10,'\r',[rfReplaceAll]);
...
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 1.
Delphi Taskbar Progress Windows 7 исходник
Запись от Alex_pac размещена 17.06.2012 в 04:35
Показов 7715 Комментарии 0
Метки delphi

модуль Unit_Win7Taskbar

Нажмите на изображение для увеличения
Название: Безымянный.jpg
Просмотров: 1037
Размер:	50.6 Кб
ID:	867
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 2.
Bass.dll это просто!
Запись от Alex_pac размещена 07.06.2012 в 13:36
Показов 7563 Комментарии 0
Метки delphi

Модуль BassSimple v1.8

http://jqbook.narod.ru/delphi/bass.htm << офф сайт и документация

Версия 1.8.1 декабрь 2012

Добавлен BassSimple Server

Версия 1.8 ноябрь 2012

Нажмите на изображение для увеличения
Название: vis_all.jpg
Просмотров: 799
Размер:	76.9 Кб
ID:	1483

Версия 1.7 октябрь 2012

Полная поддержка тегов
Наконец найден нормальный алгоритм спектра
Добавлен пример наипростейшего плеера

Версия 1.6 октябрь 2012

Нажмите на изображение для увеличения
Название: fx.jpg
Просмотров: 1104
Размер:	86.1 Кб
ID:	1312
...
Аватар для Alex_pac
Старый
DBLookupComboBox редактор
Запись от Alex_pac размещена 31.05.2012 в 22:13
Показов 3666 Комментарии 0
Метки delphi

DBLookupComboBox позволяет лекго листать записи в ДатаСете и при этом занимает мало места.

Что делает его очень удобным со стороны интерфейса.

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

Тут то и пришла мне идея положить поверх него DbEdit .
В такой модификации комбобокс одновременно может служить...
Аватар для Alex_pac
Старый
Модуль преобразования DOCX DOC в MHT
Запись от Alex_pac размещена 30.05.2012 в 16:57
Показов 5309 Комментарии 0
Метки delphi

Так как нельзя отобразить Word документ в программе Delphi

То воспользуется тем что IE (TWebbrowser) умеет отображать MHT файлы.

То есть можно хранить не Word Файлы а перепакованные MHT файлы. И отображать их через IE

вот модуль

Delphi
1
2
3
4
5
6
7
8
unit MSWord2MHT;
 
// модуль преобразования doc совместимых форматов в MHT
 
interface
 
uses
SysUtils, Windows, ActiveX, ComObj,
...
Аватар для Alex_pac
Старый
Регулярные выражения Delphi проще чем когда либо
Запись от Alex_pac размещена 27.05.2012 в 03:04
Показов 6335 Комментарии 1
Метки delphi, regex

Модуль Упрощенного интерфейса регулярных выражений

RegExpr_preg

Нажмите на изображение для увеличения
Название: i_4fac066b4ee83_jath.png
Просмотров: 738
Размер:	74.9 Кб
ID:	727

Документация:
http://jqbook.narod.ru/delphi_preg.html

Скачать:
http://jqbook.narod.ru/files/d... i_preg.rar

Preg = class

Статический класс для работы с регулярными выражениями, содержит 3 фукнции

Code
1
function match(const regexp, text: string):boolean;
Функция проверяет,...
Аватар для Alex_pac
Старый
Модуль ассоциативных списков для Delphi
Запись от Alex_pac размещена 27.05.2012 в 03:02
Показов 3045 Комментарии 0
Метки delphi

документация ->> http://jqbook.narod.ru/delphi_assoc.html

ссылка на тему обсуждения ->>

https://www.cyberforum.ru/delphi/thread550219.html

Модуль ассоциативных списков для Delphi

Скриншот программы

Нажмите на изображение для увеличения
Название: i_4faa7204ddd11_ui.jpg
Просмотров: 469
Размер:	49.1 Кб
ID:	726

Описание методов

Code
1
2
3
    public
      // последний рассчитанный индекс indexOfName
      LastInd:integer;
...
Аватар для Alex_pac
Старый
Компонент TEmbeddedWB
Запись от Alex_pac размещена 27.05.2012 в 02:57
Показов 9770 Комментарии 0
Метки delphi

Компонент TEmbeddedWB

Имеет больше методов, а также делает доступным отключение картинок и flash на страницах, что ускоряет загрузку страниц.

http://www.bsalsa.com/downloads.html - скачать
http://www.bsalsa.com/intro.html - документация (ENG)

Нажмите на изображение для увеличения
Название: ewb.GIF
Просмотров: 787
Размер:	36.4 Кб
ID:	724Нажмите на изображение для увеличения
Название: 9064975.png
Просмотров: 722
Размер:	10.2 Кб
ID:	725


примечание. при установке ругался что нет модуля Wcrypt2.pas
Он лежит в папке Source. Нужно прописать путь
...
Аватар для Alex_pac
Старый
TSpeedButton Cancel свойство
Запись от Alex_pac размещена 27.05.2012 в 02:51
Показов 2240 Комментарии 0
Метки delphi

у кнопок TSpeedButton нет свойства Cancel, которое позволяет нажимать их клавишей ESC.

Поскольку TSpeedButton это кнопка которая позволяет себя делать как картинку, то применяется она довольно часто;

Delphi
1
2
3
4
5
6
7
8
9
10
uses Controls, ExtCtrls, Buttons, StdCtrls;
 
<...> 
 
procedure SpeedButtonCancel(sB: TSpeedButton);
var p:TPanel;
begin
  p:= TPanel.Create(sB.Owner);
  with p do begin
    Parent:=sB.Parent; BevelOuter:=bvNone;
...
Аватар для Alex_pac
Старый
Рейтинг: 4.50. Голосов: 2.
Рисование цветной рамки вокруг визуальных компонентов на примере TComboBox
Запись от Alex_pac размещена 27.05.2012 в 02:44
Показов 4284 Комментарии 0
Метки delphi

Рисование цветной рамки вокруг визуальных компонентов на примере TComboBox

теоритически можно внедрить свой код в WinApi и там менять цвет и тд, но это очень нудно.
Так что воспользуется компонентом который уже умеет менять свой цвет рамки.

Это TShape

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

Delphi
1
2
3
// uses ExtCtrls
 
// цветная рамка вокруг
...
Аватар для Alex_pac
Старый
Модуль авто настройки DBNavigator
Запись от Alex_pac размещена 27.05.2012 в 02:37
Показов 3147 Комментарии 0
Метки delphi

Модуль авто настройки DBNavigator

Нажмите на изображение для увеличения
Название: 4e8c8d489cf23.jpg
Просмотров: 813
Размер:	33.5 Кб
ID:	720

Code
1
2
// установка текстовых меток
    procedure TDBNavigator.TextLabels(enable: boolean = true);
Устанавливает текстовую разметку как на втором навигаторе, при enable=false убирает метки.

Code
1
2
    // загрузка графических меток
    procedure TDBNavigator.ImageLabels(enable: boolean = true);

Устанавливает графичекую разметку как...
Аватар для Alex_pac
Старый
Простой Браузер с вкладками на Delphi
Запись от Alex_pac размещена 27.05.2012 в 02:27
Показов 6487 Комментарии 0
Метки delphi, web

Простой Браузер с вкладками на Delphi

Нажмите на изображение для увеличения
Название: 4e8546c0e7d75.jpg
Просмотров: 914
Размер:	50.8 Кб
ID:	718

Delphi_Browser.zip
Аватар для Alex_pac
Старый
Рейтинг: 5.00. Голосов: 1.
Особенности объектов в delphi
Запись от Alex_pac размещена 27.05.2012 в 02:24
Показов 3943 Комментарии 0
Метки delphi

Начну с того что каждый объект в дельфи, будь то компонент или просто строковый лист требует обязательного создания, и выделения ему памяти.

Для простоты разберемся в специфике объектов на обычном строковом листе класса TStringList

Для того чтобы создать объект надо сделать 2 вещи:
1) объявить пемеременную
2) создать объект.

создадим объект строковый лист

Code
1
2
3
var str: TStringList;
begin
str:=TStringList.Create;
...
Аватар для Alex_pac
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru