Q&A

  • 저의 트레이 아이콘은 왜? 흑백인가요??
안녕하세요...

다름이 아니오라.. 질문의 제목을 보셨으면 아시겠지만...
트레이 아이콘을 만들어 실행을 하였습니다...

근데... 왜?? 전 흑백으로 트레이 아이콘이 생기는 걸까요??

좀 가르쳐 주세요.. ^^;
아래 소스 참고하여....... 흑흑흑


procedure TForm1.FormCreate(Sender: TObject);
var
iconData    : TNotifyIconData;
begin
    top := 450;
    left := 890;

        with IconData do
        begin
         cbSize           := SizeOf ( IconData );
         Wnd              := Handle;
         uID              := 100;
         uFlags           := NIF_MESSAGE + NIF_ICON + NIF_TIP;
         uCallbackMessage := WM_USER + 100;
         hIcon            := Application.Icon.Handle;
         StrPCopy(szTip, Application.Title);
        end;
        Shell_NotifyIcon( NIM_ADD, @IconData );
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
DeleteTrayIcon;
end;

procedure TForm1.DeleteTrayIcon();
var
   iconData    : TNotifyIconData;
begin

     with IconData do
     begin
          cbSize           := SizeOf ( IconData );
          Wnd              := Handle;
          uID              := 100;
//          uFlags           := NIF_MESSAGE + NIF_ICON + NIF_TIP;
//          uCallbackMessage := WM_USER + 100;
//          hIcon            := 0;
//          StrPCopy(szTip, '');
     end;
     Shell_NotifyIcon( NIM_DELETE, @IconData );
end;

procedure TForm1.WndProc(var Message: TMessage);
begin
  inherited;
  case Message.msg of
       MY_SHOWFORM_ID:
            if Message.lParam = WM_LBUTTONDBLCLK  then
            begin
                 SetWindowPos(Handle, HWND_TOP, Left, Top, Width, Height, 0);
                 self.Visible := True;
            end;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
        Hide();
end;
0  COMMENTS