|
음.. TButton을 상속받는 컴포넌트를 만드시고, CanFocus()라는 함수를 오버라이딩하시면 됩니다. TButton의 조상인 TContol(?)이 가진 CanFocus 함수의 내용을 재정의 하는 것이죠.
class PACKAGE TMyButton : public TButton
{
public :
__fastcall TMyButton(TComponent *Owner);
virtual bool __fastcall CanFocus();
}
__fastcall TMyButton::TMyButton(TComponent *Owner) : TButton(Owner)
{
}
bool __fastcall CanFocus()
{
return false;
}
이런식으로 하면 CanFocus()가 false를 리턴하게 되어 내부적으로 포커스를 안받도록 처리하는 것인데... 이게 컴파일 오류가 나는군요. 나머지는 검색으로 한번 알아보시길... 거기까진 제가 시간이 없어서. 이만~
키보드 님이 쓰신 글 :
: 답변주셔서 감사합니다 ^^
: 음.... 그냥 TButton에 할 수 있는 방법은 없나요??
: TButton을 사용해야 해서 그런데...
: 다시 한번 부탁드립니다 ^^;;
:
: Starlet 님이 쓰신 글 :
: : 간단하게는 TButton 대신 TSpeedButton을 이용하시면 됩니다. TSpeedButton은 포커스를 갖지 않습니다.
: : TButton의 OnClick 이벤트 내용을 TSpeedButton의 OnClick으로 옮겨 보세요.
: :
: : 키보드 님이 쓰신 글 :
: : : 이리 저리 찾아봐도... 아직 초행이라 잘 모르겠네요;;;
: : :
: : : 어떤걸 어떻게 조합을 해야 되는건지 ㅠㅠ...
: : :
: : : 앞전에 이런 답을 주셨는데요~~~
: : :
: : : ----------------------------------------------------------------------------------------
: : : Edit1창에 버튼을 누를때마다 값이 더해지게 하려면 Edit1창에 커서(포커스)가 항상 있어야 하며,
: : : 버튼을 눌러도 포커스가 Edit1창에서 버튼으로 이동해서는 안됩니다.
: : : 강제 포커스 가져오는 방법과 포커스 죽이는 방법은 검색하면 찾으실 수 있을겁니다.
: : : ----------------------------------------------------------------------------------------
: : :
: : : 어떻게 해야 포커스를 강제로 가져오며 버튼의 포커스는 죽일 수 있을까요??;;
: : :
: : : OnExit, OnMouseDown 뭐.. 이런 이벤트도 아닌것 같고...
: : :
: : : 검색능력이 부족해 찾아봐도 잘 모르겠어요 ㅠㅠ 도와주세여~~
: : :
|