일단제가한 소스부터 보여드릴께요.......그리구 제가 한거 압축파일로 올릴께요 보시구 왜 그런건지 갈켜주세요 답답하네요.....이크
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Mask, DBCtrls, EDBEdit, Buttons;
type
TForm2 = class(TForm)
Btn_Edit: TBitBtn;
Btn_Cancel: TBitBtn;
Btn_Save: TBitBtn;
Btn_Exit: TBitBtn;
EDBEdit2: TEDBEdit;
EDBEdit3: TEDBEdit;
EDBEdit4: TEDBEdit;
EDBEdit5: TEDBEdit;
EDBEdit6: TEDBEdit;
EDBEdit7: TEDBEdit;
EDBEdit8: TEDBEdit;
EDBEdit9: TEDBEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Label8: TLabel;
Label9: TLabel;
EDBEdit1: TEDBEdit;
procedure Btn_ExitClick(Sender: TObject);
procedure Btn_EditClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
{$R *.dfm}
procedure TForm2.Btn_ExitClick(Sender: TObject);
begin
close;
end;
procedure TForm2.Btn_EditClick(Sender: TObject);
begin
TForm2.BtnEnabled_T; <----------에러 부분인데요---------------->
EditEnabled_T;
end;
procedure TForm2.BtnEnabled_T(Sender: TObject);
begin
Btn_Edit.Enabled := False ;
Btn_Cancel.Enabled := True ;
Btn_Save.Enabled := True ;
Btn_Exit.Enabled := False ;
end;
procedure TForm2.EditEnabled_T(Sender: TObject);
begin
EDBEdit1.Enabled := True ;
EDBEdit2.Enabled := True ;
EDBEdit3.Enabled := True ;
EDBEdit4.Enabled := True ;
EDBEdit5.Enabled := True ;
EDBEdit6.Enabled := True ;
EDBEdit7.Enabled := True ;
EDBEdit8.Enabled := True ;
EDBEdit9.Enabled := True ;
end;
procedure TForm2.BtnEnabled_F(Sender: TObject);
begin
Btn_Edit.Enabled := True ;
Btn_Cancel.Enabled := False ;
Btn_Save.Enabled := False ;
Btn_Exit.Enabled := True ;
end;
procedure TForm2.EditEnabled_F(Sender: TObject);
begin
EDBEdit1.Enabled := False ;
EDBEdit2.Enabled := False ;
EDBEdit3.Enabled := False ;
EDBEdit4.Enabled := False ;
EDBEdit5.Enabled := False ;
EDBEdit6.Enabled := False ;
EDBEdit7.Enabled := False ;
EDBEdit8.Enabled := False ;
EDBEdit9.Enabled := False ;
end;
end.
위에 표시해놓은데서 왜 오류가 나는지 모르겠어요ㅡ.ㅡ;
고수님들은 압축파일 실행해보면 어떤건지 대충아시겠죠
처음 EXE실행파일은 실행해보면 뜨는 창이 수정버튼과 종료버튼은 Enabled := True 취소버튼과 저장버튼은 Enabled := False 이구요 여기서 수정버튼을 한번 클릭하게되면 수정버튼과 종료버튼은 Enabled := False 가되구여 취소버튼과 저장버튼은 Enabled := True 가되거든요 그래서 두개의 그룹으로 만들었어요 처음 그룹은 수정버튼 종료버튼 그리고 두번째 그룹은 취소버튼 저장버튼 EDBEdit 로 했거든요 근데 잘모르겠어요 델파이 공부좀 해보려구 하는데 쉽지 않네요 답답한 마음에 이렇게 도움을 청하게 되었네요 컴포넌트를 추가로 설치를하고 EDBEdit 로 DB를 처리하는 것좀 배워보려구 도서관에가서 이책 저책 다 찾아보았는데 나왔는게 없더군요 혹시 고수님들중에 EDBEdit 에 관한 자료가 있으시면 저에게 좀 주시면 안될까요 아님 책이라두 있으면 저에게 소개좀 부탁드릴께요 답답해서 안되겠어요 책이라두 사서 봐야겠어요. 고수님들 꼭 좀 부탁드릴께요^^;
TForm2.BtnEnabled_T라는 프로시져를 보시면 (Sender: TObject) 라는
인자를 받게 되어 있습니다.
따라서 마땅한 인자를 넣어주셔야 합니다.
2. 그리고 다른 프로시져 실행시키는데는
TForm2.BtnEnabled_T; 가 아니라
Form2.BtnEnabled_T; 이렇게 하셨어야 되구요.
같은 폼내에서라면 Form2. 은 쓸 필요도 없습니다.
3. procedure TForm2.BtnEnabled_T(Sender: TObject); 라는게 어디에 선언 되어 있는 것인지...
선언되지 않은 프로시져를 사용할 수는 없죠.
4. 결과적으로 에러 나는 이유는 선언되지 않은 프로시져를 사용한 탓으로 보입니다.
private // private절에 BtnEnabled_T 프로시저를 선언 해둡니다.
procedure BtnEnabled_T; // 특별히 인자를 받을 필요가 없으니 인자는 주지 않습니다.
implementation
procedure TForm2.Btn_EditClick(Sender: TObject);
begin
Form2.BtnEnabled_T;
EditEnabled_T;
end;
procedure TForm2.BtnEnabled_T;
begin
Btn_Edit.Enabled := False ;
Btn_Cancel.Enabled := True ;
Btn_Save.Enabled := True ;
Btn_Exit.Enabled := False ;
end;
요런 형태가 되어야 옳을 것입니다.
EditEnabled_T의 부분도 마찬가지로 선언해 두고
사용하는게 똑 같으니 중복 설명은 하지 않겠습니다.
이게 원인이 아니면 다시 질문하세요.