Скачиваний:
28
Добавлен:
01.05.2014
Размер:
4.37 Кб
Скачать
unit MainForm;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, ExtCtrls, StdCtrls, Instances, Core, Grids, ExpertModule,
Attribute, GKClusterModule, filters, BaesModul, J48Module, MMyEM;

type
TForm1 = class(TForm)
MainMenu1: TMainMenu;
File1: TMenuItem;
Datamining1: TMenuItem;
Expertsystem1: TMenuItem;
Loaddata1: TMenuItem;
Savedata1: TMenuItem;
Exit1: TMenuItem;
StringGrid1: TStringGrid;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
GKclaster1: TMenuItem;
Filtermodule1: TMenuItem;
Baes1: TMenuItem;
J481: TMenuItem;
EM1: TMenuItem;
procedure Exit1Click(Sender: TObject);
procedure Loaddata1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Savedata1Click(Sender: TObject);
procedure Expertsystem1Click(Sender: TObject);
procedure GKclaster1Click(Sender: TObject);
procedure Filtermodule1Click(Sender: TObject);
procedure Baes1Click(Sender: TObject);
procedure J481Click(Sender: TObject);
procedure EM1Click(Sender: TObject);
private
procedure UpdateMenus();
public
{ Public declarations }
end;

var
Form1: TForm1;
core: TDMCore;

implementation

{$R *.dfm}

procedure TForm1.Exit1Click(Sender: TObject);
begin
Close;
end;

procedure TForm1.Loaddata1Click(Sender: TObject);
var stream: TFileStream;
inst: TDMInstances;
str: String;
begin
if (OpenDialog1.Execute) then
begin
stream := TFileStream.Create(OpenDialog1.FileName, fmOpenRead);
inst := TDMInstances.Create(stream);
stream.Free;
str:=inst.toString;
core.SetData(inst);
core.UpdateTable(StringGrid1);
StringGrid1.Visible:=true;
end;
UpdateMenus;
end;

procedure TForm1.FormCreate(Sender: TObject);
var stream: TFileStream;
inst: TDMInstances;
str: String;
begin
core:=TDMCore.Create();
if (OpenDialog1.Execute) then
begin
stream := TFileStream.Create(OpenDialog1.FileName, fmOpenRead);
inst := TDMInstances.Create(stream);
stream.Free;
str:=inst.toString;
core.SetData(inst);
core.UpdateTable(StringGrid1);
StringGrid1.Visible:=true;
end;
UpdateMenus;
end;

procedure TForm1.Savedata1Click(Sender: TObject);
var
F: TextFile;
S: string;
begin
if SaveDialog1.Execute then { Display Open dialog box }
begin
S := (core.GetData()as TDMInstances).ToString();
AssignFile(F, SaveDialog1.FileName); { File selected in dialog }
Rewrite(F);
Write(F, S); { Read first line of file }
CloseFile(F);
end;
end;

procedure TForm1.Expertsystem1Click(Sender: TObject);
var em: TExpertModule;
begin
em:=TExpertModule.Create;
em.InitView(core);
UpdateMenus;
end;

procedure TForm1.GKclaster1Click(Sender: TObject);
var
gkModule: TGKClusterModule;
i1: integer;
begin
gkModule:=TGKClusterModule.Create();
gkModule.InitView(core);
i1:=core.GetData().numAttributes();
core.UpdateTable(StringGrid1);
UpdateMenus;
end;

procedure TForm1.UpdateMenus();
var
dataExist: boolean;
rulesExist: boolean;
begin
if core.GetData=nil then
dataExist:=false
else
dataExist:=true;

if core.GetRules=nil then
rulesExist:=false
else
rulesExist:=true;

Savedata1.Enabled:=dataExist;
Expertsystem1.Enabled:=dataExist;
Datamining1.Enabled:=dataExist;
end;

procedure TForm1.Filtermodule1Click(Sender: TObject);
var
filterModule: TFilters;
begin
filterModule:=TFilters.Create();
filterModule.InitView(core);
core.UpdateTable(StringGrid1);
UpdateMenus;
end;

procedure TForm1.Baes1Click(Sender: TObject);
var
module: TBaesModule;
begin
module:=TBaesModule.Create;
module.InitView(core);
core.UpdateTable(StringGrid1);
UpdateMenus;
end;

procedure TForm1.J481Click(Sender: TObject);
var
module: TJ48Module;
begin
module:=TJ48Module.Create;
module.InitView(core);
core.UpdateTable(StringGrid1);
UpdateMenus;
end;



procedure TForm1.EM1Click(Sender: TObject);
var
module: MEM;
begin
module:=MEM.Create;
module.InitView(core);
core.UpdateTable(StringGrid1);
UpdateMenus;
end;

end.
Соседние файлы в папке UI