Показать сообщение отдельно
  #12  
Старый 23.09.2013, 22:16
Аватар для Uniq!
Uniq! Uniq! вне форума
Местный
 
Регистрация: 29.09.2010
Сообщения: 539
Версия Delphi: Delphi XE3
Репутация: 374
По умолчанию

Нужны хорошие книжки. Я осилил около десятка за 10 лет. И кучу интернет ресурсов. О том, что такое Sender узнал только сегодня.

Что касается AfterConnect:
Код:
procedure TfDM.DoAfterConnect(Sender: TObject);
var
  i: integer;
  Connection: TADOConnection;
begin
  Connection := (Sender as TADOConnection);
  for i := 0 to Connection.DataSetCount - 1 do
  begin
    fSynch.pSynch.Properties.Text := 'Загрузка: ' + GlobalConn.DataSets[i].Name;
    fSynch.pSynch.Update;
    Connection.DataSets[i].Open;
    fSynch.pSynch.Position := fSynch.pSynch.Position + 100 / Connection.DataSetCount;
    fSynch.pSynch.Update;
  end;
end;

Это типа класс. Сейчас ещё пару вёдер критики бы, было бы замечательно.
Код:
unit uEnvironment;

interface

uses IniFiles;

type
  TEnvironment = Class(TIniFile)
  private
    function GetNum: string;
    function GetNumM: string;
    function GetPawnshop: string;
    procedure SetNum(const Value: string);
    procedure SetNumM(const Value: string);
    procedure SetPawnshop(const Value: string);
  public
    property Pawnshop: string read GetPawnshop write SetPawnshop;
    property Num: string read GetNum write SetNum;
    property NumM: string read GetNumM write SetNumM;
    constructor Create(FilePath: string);
  end;

var
  Environment: TEnvironment;

implementation

{ TEnvironment }

constructor TEnvironment.Create(FilePath: string);
begin

end;

function TEnvironment.GetPawnshop: string;
begin
  Environment.ReadString('General', 'Pawnshop', '');
end;

function TEnvironment.GetNum: string;
begin
  Environment.ReadString('General', 'Num', '');
end;

function TEnvironment.GetNumM: string;
begin
  Environment.ReadString('General', 'NumM', '');
end;

procedure TEnvironment.SetPawnshop(const Value: string);
begin
  Environment.WriteString('General', 'Pawnshop', Value);
end;

procedure TEnvironment.SetNum(const Value: string);
begin
  Environment.WriteString('General', 'Num', Value);
end;

procedure TEnvironment.SetNumM(const Value: string);
begin
  Environment.WriteString('General', 'NumM', Value);
end;

{$R *.dfm}

end.

Я так понимаю экземпляр этого класса должен быть доступен из всех форм (хотя чутьё подсказывает, что не из форм, а из процесса(сов)).
Если отказываться от fDM (никогда, кстати не использовал, прочитал в книге, что на нём удобно держать тьму этих компонентов), то как тогда быть? Держать их на главной форме?
Я уже думаю создать методичку для самого себя. Чтоб по полочкам всё разложить.
Ответить с цитированием