Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
ВнизКак перезагрузить программу? Найти похожие ветки
← →
AlexHEY (2002-10-11 22:45) [0]У меня в OnCreate главной формы загружаються настройки из ini
файла. Как можно програмно перезагрузить программу?
← →
Song (2002-10-11 22:48) [1]Создать батник с запуском проги, запустить батник, закрыть.
← →
TTCustomDelphiMaster (2002-10-11 22:51) [2]Запустить вторую копию через ShellExecute и закрыть первую.
← →
AlexHEY (2002-10-11 22:52) [3]А пример? :)
← →
Kotka (2002-10-11 23:10) [4]Сам хоть раз пошевели мозгами или кнопкой F1!
← →
AlexHEY (2002-10-11 23:14) [5]Кнопка F1 не работает :)
Мозги тоже :)
← →
Дремучий (2002-10-11 23:20) [6]смешно...
:))
1)выносишь чтение ини файла в отдельную процедуру.
2)вызываешь ее в онКриэйт
3)вызываешь в других местах
П.С. брать пример с мелкософта - дурной тон, ты б комп перегрузил, чтоб настройки из инифайла перечитать.
:)
← →
AlexHEY (2002-10-11 23:23) [7]:)
А как можно вызвать процедуру которая находится в другом модуле?
← →
Дремучий (2002-10-11 23:32) [8]1)я такие процедурки выношу в отдельный модуль, обычно обзываю его global.pas Вот пример такого модуля...
unit global;
interface
uses Forms, Sysutils, Controls, IniFiles, general;
var
IniFile :TIniFile;
OpDay :TDate;
Date1,Date2 :TDate;
KlientFileName,
DataFileName :string;
ClientCode :integer;
PlaceCode :integer;
DirAppRoot,
DirAppDataDefault,
DirAppData,
DirAppDataBase,
DirAppDataNSI,
DirAppReport :string;
const
//имя раздела ини~файла
OptionsSection = "Options";
procedure ReadOptions;
procedure SaveOptions;
implementation
procedure ReadOptions;
begin
IniFile:= TIniFile.Create(ChangeFileExt(Application.ExeName,".ini"));
try
DirAppData:= IniFile.ReadString(OptionsSection, "DirAppData", DirAppDataDefault);
DirAppDataBase:= IniFile.ReadString(OptionsSection, "DirAppDataBase",DirAppDataDefault);
DirAppDataNSI:= IniFile.ReadString(OptionsSection, "DirAppDataNSI",DirAppDataDefault);
KlientFileName:= QuotedStr(DirAppDataNSI + "klient.dbf");
finally
IniFile.Free;
end;
end;
procedure SaveOptions;
begin
//возможно изменился DirAppDataNSI
KlientFileName:= QuotedStr(DirAppDataNSI + "klient.dbf");
IniFile:= TIniFile.Create(ChangeFileExt(Application.ExeName,".ini"));
try
IniFile.WriteString(OptionsSection, "DirAppData", DirAppData);
IniFile.WriteString(OptionsSection, "DirAppDataBase", DirAppDataBase);
IniFile.WriteString(OptionsSection, "DirAppDataNSI", DirAppDataNSI);
finally
IniFile.Free;
end;
end;
initialization
DirAppRoot:= DirToPath(ExtractFileDir(Application.ExeName));
DirAppReport:= DirAppRoot + "Report\";
DirAppDataDefault:= DirAppRoot + "Data\";
ReadOptions;
end.
2)в модулях из которых нужно вызывать пишешь uses global;
Вот пример
unit options;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, Mask, ToolEdit, IniFiles, Buttons, ExtCtrls, ComCtrls,
general;
type
TfmOptions = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Panel1: TPanel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Label3: TLabel;
edDirAppData: TDirectoryEdit;
GroupBox1: TGroupBox;
Label1: TLabel;
edDirAppDataBase: TDirectoryEdit;
Label2: TLabel;
edDirAppDataNSI: TDirectoryEdit;
TabSheet2: TTabSheet;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
procedure BitBtn1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
fmOptions: TfmOptions;
implementation
uses global;
{$R *.DFM}
procedure TfmOptions.FormCreate(Sender: TObject);
begin
......
← →
AlexHEY (2002-10-11 23:37) [9]Огромное спасибо!!!
пойду чинить F1 и............
← →
Kotka (2002-10-11 23:37) [10]>Кнопка F1 не работает
Что, не выдержала частых нажатий?
← →
AlexHEY (2002-10-12 22:14) [11]>Kotka © (11.10.02 23:37)
:)
← →
int64 (2002-10-13 04:37) [12]Обязательно перезагружать? Что вы тут развели бодягу, когда для решения задачи может хватить и запуска OnCreate.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.10.24;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.01 c