Q&A

  • ComboBox에서의 힌트보이기
안녕하세요.



콤보박스를 펼쳐서 마우스로 아이템을 선택할려고 이동중일때

그 아이템의 내용을 힌트로 나타내고 싶습니다. 그 아이템의

바로 옆에....



어떤 방식을 이용해야 할까요?

1  COMMENTS
  • Profile
    구창민 1999.04.24 07:30
    박홍석 wrote:

    > 안녕하세요.

    >

    > 콤보박스를 펼쳐서 마우스로 아이템을 선택할려고 이동중일때

    > 그 아이템의 내용을 힌트로 나타내고 싶습니다. 그 아이템의

    > 바로 옆에....

    >

    > 어떤 방식을 이용해야 할까요?



    홍석님 안녕하세요?

    일전에 전철호님의 홈에서 퍼온 내용입니다.

    보시고 도움되시길 바랍니다.



    [팁]리스트 박스, 콤보박스일 경우 해당 아이템에 힌트를 사용 하는 방법

    리스트 박스, 콤보박스는 Control에 대해서만 힌트를 나타낸다.

    그런데 각각의 Item마다 다른 힌트를 나타내려면 어떻게 나타낼까 ?.



    아주 간단한 방법을 사용하여 위의 문제를 해결해 보자.

    일단 OmMouseMove Event에다

    다음과 같이 기술한다.



    TableTree는 리스트 박스로 간주한다.



    if TableTree.Items.Count <= 0 then

    System.Exit;

    {$R-} // Range Check Error를 뺀다.

    P.X := X;

    P.Y := Y;

    dw := SendMessage(TableTree.Handle,LB_ITEMFROMPOINT,0,MAKELPARAM(P.X,P.Y));

    idx := LOWORD(dw);

    if HIWORD(dw) = 1 then // 마우스가 리스트박스 아이템 위치에 없을때.

    System.Exit;

    Hint := TableTree.Items[idx];

    {$R+}



    그리고 나서 ShowHint를 True로 설정하면 해당 Item에 같을 경우

    Item에 해당되는 값이 힌트에 나타날 것이다.



    또한 해당 Item에 popup을 나타내는 경우도 아주 간단하게

    해결할 수 있다.



    OnMouseUp Event에다 다음과 같이 기술하면 된다.

    var

    P : TPoint;

    idx: integer;

    dw : DWORD;

    begin

    if TableTree.Items.Count <= 0 then

    System.Exit;

    if Button = mbRight then

    begin

    P.X := X;

    P.Y := Y;

    dw := SendMessage(TableTree.Handle,LB_ITEMFROMPOINT,

    0,MAKELPARAM(P.X,P.Y));

    idx := LOWORD(dw);

    if HIWORD(dw) = 1 then // 리스트박스 아이템 위치에 없을때.

    System.Exit;

    TableTree.ItemIndex := idx;

    if TableTree.ItemIndex = idx then

    begin

    P := TableTree.ClientToScreen(P);

    Popup_Table.Popup(P.X,P.Y);

    end;

    end;



    ComboBox나 TCheckListBox도 위와 같이 사용하면은

    Item 각각의 힌트와 Popup윈도우를 사용할 수 있다.



    • 박상현
    • 1999.04.24 23:06
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.25 08:02
      리스트에 없는 인덱스를 가리켰기 때문에 난 에러 입니다. 예를들면 리스트에 들어있는 아이템의 갯수가 3...
    • 한태진
      1999.04.25 04:23
      WhiteDragon wrote: > 제가 변환할려는 것은 도스용 dbf화일을 델파이 파라독스 화일인 db로 전환할려고 ...
    • 박홍석
    • 1999.04.24 20:25
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 강두헌
      1999.04.27 22:14
      박홍석 wrote: > 안녕하세요. > > 날짜형 필드를 가지고 쿼리하는 방법을 알고 싶습니다. > 여러가지...
    • 신인재
      1999.04.26 21:03
      박홍석 wrote: > 안녕하세요. > > 날짜형 필드를 가지고 쿼리하는 방법을 알고 싶습니다. > 여러가지...
    • 이헌
    • 1999.04.24 18:48
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.24 20:15
      TextOut의 마지막 인자는 String형입니다. 기본적으로 델파이 32비트에서는 String형의 길이는 제한이 없...
    • 박광호
    • 1999.04.24 18:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.24 20:32
      폼 이름이 Form2라고 가정을 하고 Form2는 TForm형이라고 가정을 할때, Form2 := TForm.Create(Self); ...
    • 김성희
    • 1999.04.24 09:25
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.24 12:05
      김성희 wrote: > 독립된 프로그램 사이에서 파라메터가 이동할수 있는 방법이나요? > 있다면 어떤방법인...
    • 박홍석
    • 1999.04.24 06:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 구창민
      1999.04.24 07:30
      박홍석 wrote: > 안녕하세요. > > 콤보박스를 펼쳐서 마우스로 아이템을 선택할려고 이동중일때 > 그 ...
    • 김경수
    • 1999.04.24 05:42
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.24 08:09
      이 문제의 키는 Font.Height 에 있습니다. 화면이 72 DPI일 경우 Font.Height 의 공식은 아래와 같습니다....
    • 김경수
      1999.04.24 12:42
      안녕하세요. 김경수입니다. 에구 size로 하니까 아래와 같은 문제가 없어지더군요. 답변 감사드립니다. ...
    • 김영회
    • 1999.04.24 04:00
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.24 08:11
      다른곳에서 잘되었다면 삼보에서도 잘 되어야 겠죠. 델파이와 BDE의 관계중 하나 가능성이 있는것이라면 ...
    • 초보자
    • 1999.04.24 02:28
    • 2 COMMENTS
    • /
    • 0 LIKES
    • chaser
      1999.04.24 03:24
      초보자 wrote: > 윈도우의 탐색기 처럼 한 폼에서 여러개의 부분으로 구분된 폼을 만들고 싶습니다. 어떻...
    • 초보자
      1999.04.24 21:53
      답변에 감사드립니다 한가지 더 질문올립니다. 화면을 양쪽으로 분할하는것은 이제 알았습니다. 그러면 ...
    • 손진운
    • 1999.04.24 02:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.24 04:32
      AsyncProfessional이라는 컴포넌트가 지원합니다. 유료구요... 구입문의는 나이렉스로 문의 바랍니다. 5...
    • 송동일
    • 1999.04.24 01:05
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.24 04:35
      송동일 wrote: > 델파이로 사다리 프로그램을 짜볼려고 하는데... > 통 감이 안 잡히네요... > 학교 다...
    • chaser
    • 1999.04.23 23:44
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 한승현
    • 1999.04.23 23:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.24 04:34
      한승현 wrote: > > dpk, dpl이 아닌 개별적인 파일(pas)을 가지고 하나씩 > component를 install시키...
    • 공대규
    • 1999.04.23 22:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.04.23 23:23
      공대규 wrote: > 안녕하십니까요? > > PaintBox에 Image1.canvas를 카피하려 할 때, 에러가 납니다. >...
    • 이민병
    • 1999.04.23 19:14
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김경수
      1999.04.24 05:06
      안녕하세요 김경수라는 사람입니다. 전 nt용 오라클8하구 델파이4랑 해봤는데 뭐 같은내용이겠지요.. 오...
    • 이상준
    • 1999.04.23 18:51
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.04.23 21:07
      이상준 wrote: > 윈도95의 바탕화면에 있는 네트워크 환경처럼 LAN으로 연결된 컴퓨터들의 > 컴퓨터 이름...
    • 배리스
    • 1999.04.23 06:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.04.23 07:08
      파워러브 델파이 창간호의 일부 입니다~ 1. 현재 라인번호 알아내기 메모에서 현재 Caret이 위치하...