Автор: Гао Сумей
Простой способ настройки механизмов обработки данных (BDE, SQL Link)
Когда программа базы данных распространяется, необходимо переносить механизм данных (BDE, SQL Link), а после установки программы на клиенте необходимо настроить механизм данных, например имя пользователя (имя пользователя), пароль (PassWord). , и т. д. Если требуется настройка вручную, рабочая нагрузка будет относительно большой. На данный момент мы можем использовать InstallShield For Delphi, чтобы легко реализовать настройку. При использовании InstallShield For Delphi для создания программы установки в каталоге, где сгенерирована программа установки, имеется текстовый файл *.iwz. Вам нужно только вручную добавить его во фрагмент [IDAPI Alias]. Например:
[Псевдоним IDAPI]
имя пользователя = SYSDBA
пароль=мастерключ
После установки программы движок данных настраивается автоматически.
Как сделать быструю полоску для пуговиц
Каждая графическая кнопка на панели быстрых кнопок представляет собой часто используемую функцию. При этом эти графические кнопки больше по размеру, чем обычные значки. Можно разместить более крупную и яркую графику, и они могут даже нести короткие подсказки, что очень удобно. полезно для Пользователям полезно выполнять наиболее часто используемые функции. По вышеуказанным причинам все больше и больше приложений Windows используют полосы быстрых кнопок для улучшения интерфейса приложения. При программировании на Delphi автор использует два разных метода реализации панели быстрых кнопок. В этой статье объединен пример создания панели быстрых кнопок с двумя группами по шесть кнопок и перечислены конкретные этапы проектирования этих двух методов.
1. Метод формирования комбинации
(1) Поместите объект Panel1 на форму в качестве носителя графической кнопки.
(2) Установите для атрибута Caption панели Panel1 значение пустое, для атрибута Align — значение alTop и отрегулируйте его высоту до соответствующего размера.
(3) Разместите шесть кнопок SpeedButton на Panel1 (SpeedButton выбрана потому, что она имеет плавающие характеристики).
(4) Поместите два объекта Bevel на Panel1 и отрегулируйте их положение и размер, чтобы разделить группы кнопок.
(5) Настройте размер и положение кнопки SpeedButton1 на панели Panel1.
(6) Выберите SpeedButton1 и установите для его свойства Flat значение True.
(7) Нажмите маленькую кнопку с многоточием, соответствующую символу атрибута SpeedButton1, откройте окно PictureEditor и выберите значок, обозначающий «запрос». Установите для свойства ShowHint значение True, а для свойства Hint — значение «Query».
(8) Выполните шаги (5)–(7), чтобы настроить свойства остальных кнопок SpeedButton.
Таким образом, быстрая полоска пуговиц завершена. Во время работы быстрые кнопки отображаются плавающим образом. При наведении на них мыши отображается контур кнопки и небольшая подсказка.
2. Заимствовать метод создания ToolBar
(1) Поместите объект ToolBar1 в форму.
(2) Установите для свойств EdgeBorders.ebLeft, ebTop, ebRight и ebButtom ToolBar1 значение True; для свойства Flat установите значение True; измените размер ToolBar1 до соответствующего размера.
(3) Выберите ToolBar1, щелкните правой кнопкой мыши быстрое меню, выберите NewButton и NewSeparator соответственно, чтобы добавить шесть кнопок ToolButton и две линии-разделители.
(4) Выберите любую кнопку ToolButton и отрегулируйте ее размер до соответствующего размера. Все ToolButtons также будут изменены одновременно.
(5) Установите для свойства BorderWidth ToolBar1 значение 3, чтобы отрегулировать положение ToolButton.
(6) Поместите объект ImageList1 в форму и установите значения его свойств Height и Width для размещения изображений большего размера.
(7) Дважды щелкните ImageList1 и загрузите шесть изображений соответственно с помощью кнопки «Добавить», соответствующей шести кнопкам инструментов в ToolBar1.
(8) Установите для свойства Images ToolBar1 значение ImageList1.
(9) Установите для атрибута ShowHint шести кнопок ToolButton значение True и установите для них соответствующие небольшие атрибуты подсказки Hint.
(10) Вы также можете установить HotImages ToolBar1, чтобы указать набор изображений, когда мышь указывает на кнопку.
Панель быстрых кнопок, реализованная с помощью ToolBar, по внешнему виду аналогична той, что сделана первым методом.
Оба вышеперечисленных метода могут реализовать панель быстрых кнопок, но каждый из них имеет свои преимущества: первый процесс проектирования относительно прост, второй метод предоставляет больше функций, таких как использование HotImages для указания набора изображений, когда мышь указывает на кнопку; . Читатели могут выбрать один из них и продолжить улучшать его функции.
Как создать временную таблицу
Ввод данных — неизбежная часть разработки программ баз данных. В структуре «Клиент/Сервер» клиент может ввести пакет данных, а затем отправить его в серверную базу данных. Для этого необходимо создать временную таблицу данных локально (клиент) для хранения данных, введенных пользователем. таблица локальных данных будет очищена. Преимущества этого метода: повышение эффективности ввода и снижение нагрузки на сеть.
Поскольку объем данных, вводимых пользователями одновременно, обычно невелик (не более нескольких сотен записей), временную таблицу можно разместить в памяти, что приводит к более быстрой обработке. Создать временную таблицу можно двумя способами:
1. Используйте управление запросами для создания временной таблицы.
Шаг 1. Поместите элемент управления запросом (TQuery) в форму и настройте подключенную таблицу данных.
Шаг 2. Добавьте следующее утверждение:
TQuery.CachedUpdates=Истина;
TQuery.RequestLive=Истина.
Шаг 3. Добавьте подинструкцию Where после исходного оператора SQL. Требуется, чтобы результат запроса SQL был пустым после добавления этого подинструктора Where.
Например:
ВЫБЕРИТЕ Биологическую жизнь."Номер вида", Категория, Общее_название, Биологическая жизнь."Название вида", Биологическая жизнь."Длина (см)", Длина_дюймы, Примечания, Графика
ИЗ "biolife.db" Биолайф
где Biolife.Category=’A’ и Biolife.Category=’B’
Таким образом создается временная таблица.
2. Используйте код для создания временной таблицы.
Код функции следующий:
функция CreateTableInMemory(const AFieldDefs:TFieldDefs):
Тдатасет;
вар TempTable: TClientDataSet;
начинать
TempTable: = ноль;
Результат: = ноль;
если AFieldDefs〈〉nil, то
начинать
пытаться
TempTable:=TClientDataSet.Create(приложение);
TempTable.FieldDefs.Assign(AFieldDefs);
TempTable.CreateDataSet;
Результат:=(TempTable как TDataSet);
Кроме
если TempTable〈〉nil, то TempTable.Free;
Результат: = ноль;
поднимать;
конец
конец
конец;
Вызовите его в программе следующим образом:
PROcedure TForm1.Button1Click(Отправитель: TObject);
вар ADataSet: TDataSet;
начинать
ADataSet:=TDataSet.Create(Self);
с помощью ADataSet.FieldDefs сделайте
начинать
Добавить('Имя',ftString,30,False);
Добавить('Значение',ftInteger,0,False);
конец;
с DataSource1 сделать
начинать
DataSet:=CreateTableInMemory(ADataSet.FieldDefs);
Набор Данных.Открыть;
конец;
ADataSet.Free;
конец;
Таким образом создается временная таблица.
Метод 1 прост в использовании, но из-за использования управления запросами при очистке данных необходимо запрашивать фоновую базу данных сервера, поэтому скорость немного ниже, и он не подходит для ситуаций, когда каждое поле во временной таблице состоит из полей из нескольких таблиц данных. Метод 2 имеет широкий спектр применения и работает быстро, но требует написания кода.
Использование функций в базе данных InterBase
Когда программисты используют InterBase в качестве серверной базы данных, они часто находят ее неудобной в использовании, поскольку она предоставляет слишком мало функций (всего четыре), что делает невозможным простое написание сложных хранимых процедур. Сам InterBase не может писать функции, но может использовать внешние функции (вызов функций в DLL). В следующем примере показано, как объявить функцию SUBSTR в InterBase.
ОБЪЯВИТЬ ВНЕШНЮЮ ФУНКЦИЮ SUBSTR
CSTRING(80), SMALLINT, SMALLINT
ВОЗВРАЩАЕТ CSTRING(80)
ENTRY_POINT "IB_UDF_substr" ИМЯ_МОДУЛЯ "ib_udf"
Среди них: MODULE_NAME — имя DLL, а ENTRY_POINT — имя функции.
Его можно использовать после объявления, например:
выберите SUBSTR (страна)
из страны
В этом примере используется база данных IBLocal, которая поставляется с установкой Delphi. Пользователи также могут писать свои собственные функции для расширения InterBase.