|
제가 이해를 완벽히는 다 못했습니다.
하시려는 부분은 간단히 구현가능한 부분인 것으로는 여겨집니다.
일반적으로 트레이 아이콘에 좌측 버튼을 버블클릭하는 이벤트나 우측 마우스로 메뉴를 보여 선택하게 하는 방법 또는 좌측 마우스를 한번 눌러서 그냥 선택메뉴를 보이는 방법 등으로 나눌 수 있을 겁니다.
트레이 아이콘은 직접 코딩을 하셔서 만드셔도 되고
또는 빌더의 컴포넌트를 사용하셔도 됩니다.
제가 보기엔 별로 문제가 없다면 그냥 컴포넌트를 사용하세요~
콤퍼넌트의 트레이아이콘 활성화를 위해서 조절하셔야 할부분은 세가지 입니다.
우선 팝업 메뉴를 메인 폼에 두신 후 프로퍼티를 그 메뉴에 연결하는 겁니다.
두번째는 Visible 프로퍼티를 트레이아이콘화할때 값을 true로 변경하는 겁니다.
세번째 클릭 이벤트에서 마우스 버튼을 구별하여 메뉴를 사용할 수 있게 하면 되는 겁니다.
한번 해보시고 정녕 안되시면 예제를 하나 드리겠습니다.
빵샹시 님이 쓰신 글 :
: 안녕하세요..
: 트레이 아이콘을 여기 게시판보고 따라서 만들었거든요..
: 메인 폼 따로...트레이 아이콘 작업만 따로 처리 하는 cpp파일을 따로 만들고요...
: 그래서 메인폼에서 트레이 아이콘 처리 하는부분을 불러와서 트레이아이콘이 만들어지긴 했는데요..
: 이 트레이아이콘에서 팝업창을 띄워야 하는데..잘 안되서요..
: 게시판에 나온대로 보고 해봤는데도 잘 안되고..
: 1..팝업창을 띄우는 부분까지 트레이아이콘만 처리하는 cpp파일에서 처리하게 하고 싶은데..그건 안되는건가요??
: 2..안된다면 메인폼에서 띄울때 어떻게 해야 하는지 알려주세요!!
:
: //트레이 아이콘의 팝업매뉴 띄우기
: void __fastcall TrayIcon::TrayPop(TMessage& Msg)
: {
: if(Msg.LParam == WM_RBUTTONUP)
: {
: MainForm->TrayMenu->Popup(Mouse->CursorPos.x, Mouse->CursorPos.y);
: SetForegroundWindow(Handle);
: }
: else if (Msg.LParam == WM_LBUTTONUP)
: {
: MainForm->Show();
: }
: }
:
: 빌더에 있는 트레이 아이콘 예제도 따라해보고..이곳 게시판에 있는 내용도 따라 해 봤는데 잘 안됬습니다..
: 고수님들 알려주세요~~
|