Q&A

  • DBEdit에서 커서가 가면 색깔을 바꾸려고 하는데...
초보 인사합니다...꾸벅



다름이 아니라 DBEdit에서 커서가 들어가면 바탕색과 글자폰트를 바꾸고 나가면 원래의 색으로 복귀하는 것을 만드는데 아래있는 에러메세지가 뜨는군요..



"[Warning] GuRaeChuprg.prg[133]:Variable 'Name1'might not have been initialized"



Var

EditColor1,Edit2Color : Integer; <--- 전역변수





procedure TGuRaeChuForm.Edit1Enter(Sender: TObject);

Var

Name1 : TDbedit; <--- 요놈 전역변수쓰면 에러가 나서 지역번수로 씀..

begin

EditColor1 := Name1.Color; <--- 기존의 색을 변수에 저장하고

EditColor2 := Name1.Font.Color;

Name1.Color := $005E2F00;

Name1.Font.Color := clYellow;





end;



procedure TGuRaeChuForm.Edit1Exit(Sender: TObject);

Var

Name1 : TDbedit;

begin

Name1.Color := EditColor1; <--- 커서가 나갈때 저장된 변수의 값을 다시 복귀함

Name1.Font.Color := EditColor2;

end;



위의 프로그램은 아무이상없시 작동은 되지만 뭔가 꺼림직하군요..

고수님들의 조언 부탁합니다.. 꾸벅



1  COMMENTS
  • Profile
    ㅏㅔㅔ 2001.07.18 08:37
    /////////// 이렇게 함 해보세요....



    Var

    color1,color2 : tcolor; <--- 전역변수



    procedure TGuRaeChuForm.Edit1Enter(Sender: TObject);

    begin

    color1:=Tedit(sender).color;

    color2:=Tedit(sender).font.color;

    Tedit(sender).color:=clyellow;

    Tedit(sender).font.color:=clred;

    end;



    procedure TGuRaeChuForm.Edit1Exit(Sender: TObject);

    begin

    Tedit(sender).color:=color1;

    Tedit(sender).font.color:=color2;

    end;





    ////////지금 피시방이라서 코딩이 맞는지 모르겠네요.



    왕초보 wrote:

    > 초보 인사합니다...꾸벅

    >

    > 다름이 아니라 DBEdit에서 커서가 들어가면 바탕색과 글자폰트를 바꾸고 나가면 원래의 색으로 복귀하는 것을 만드는데 아래있는 에러메세지가 뜨는군요..

    >

    > "[Warning] GuRaeChuprg.prg[133]:Variable 'Name1'might not have been initialized"

    >

    > Var

    > EditColor1,Edit2Color : Integer; <--- 전역변수

    >

    >

    > procedure TGuRaeChuForm.Edit1Enter(Sender: TObject);

    > Var

    > Name1 : TDbedit; <--- 요놈 전역변수쓰면 에러가 나서 지역번수로 씀..

    > begin

    > EditColor1 := Name1.Color; <--- 기존의 색을 변수에 저장하고

    > EditColor2 := Name1.Font.Color;

    > Name1.Color := $005E2F00;

    > Name1.Font.Color := clYellow;

    >

    >

    > end;

    >

    > procedure TGuRaeChuForm.Edit1Exit(Sender: TObject);

    > Var

    > Name1 : TDbedit;

    > begin

    > Name1.Color := EditColor1; <--- 커서가 나갈때 저장된 변수의 값을 다시 복귀함

    > Name1.Font.Color := EditColor2;

    > end;

    >

    > 위의 프로그램은 아무이상없시 작동은 되지만 뭔가 꺼림직하군요..

    > 고수님들의 조언 부탁합니다.. 꾸벅

    >