C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[48829] Re:메신져 등의 알림창 어찌 만드는지요?
장성호 [nasilso] 2381 읽음    2007-04-09 17:05
먼저 msn 이나 nate 메인져에서 어떻게 만들었는지 모릅니다.

그냥 제 나름대로 비슷하게 만들어서 사용하는데요..
아래는 제가 만들어 쓰는 알람창의 원리를 몇가지 기술해 보았습니다.


저는 그냥 윈도우로 만듭니다. TForm으로요

참조1.  창의 위치
     Screen  객체를 이용해서  알람창의 위치를 설정합니다.
     TaskBar의 위치와 크기도 알아야 하구요  ( SHAppBarMessage 를 이용했음)
     (작업관리자 윗쪽에 떠야 하므로 ... )

참조2.  창의 모양
      - BorderStyle   => Caption이 없어야 하니 BorderStyle=bsNone으로 하시구요
      - Size               => 적절하게 정하시구요
      - 배경               => TImage같은것 올려놓으시고 원하는 이미지 올리세요
      - FormStyle      => 다른 프로그램보다 위에 떠야 하므로  fsStayOnTop 으로 설정


참조3.  Show 위치
      ;  알람창이 여러개 동시에 떳을때 두번째,세번째.. 알람창을 어디에 띄워줄것이가의 문제
      - 알람창의 갯수와 현재 떠 있는 위치를 기억하고 , 또 Screen의 크기에 맞춰 제한이 필요하
      - 예를 들어 오른쪽 하단에서 부터 윗쪽으로 다섯개 띄워준다고 일단 정하고
         첫번째가 알람창이 떠있는 상태라면 두번째는 그 창 윗쪽에 띄워준다.


참조4.  Show  or Hide 에니메이션
       1)  서서히 나타났다가 서서히 사라지는 경우
              ; AlphaBlendValue 값을 조정해서 구현하면됨

       2) 아래서 부터 올라왔다가 다시 아래로 내려가는 경우
              ; Form의 Size를 서서히 커지게 했다가 .. 작아지게 했다가 함
                ( 위치조정도 같이)

참조5. Sound (음향)
       -  *.wav 파일을   PlaySound 함수를 이용해서 플레이함 ( 옵션이 좀...)
      
참조6. 이벤트
       -  "메일이 왔습니다." 라는 알람이 뜰때 알람을 클릭하면 메일이 열리고
       - "누가 로그인 했습니다." 라는 알람을 클릭하면  대화창이 뜨게 되듯이
           이런 이벤트 처리를 해야함
          (  개인적으로 그냥  함수포인터를 썼음 , 방법은 무지 많음 )
    
마무리
      알람창이 여러개 뜰수 있어야 하고
      알람창이 뜨는중에 또다른 알람창이 뜰수도 있으므로..
      알람창 show ~~ hide 전과정을 쓰레드로 만듬


이상입니다.

위에 기술한 방법이 뭐 아주 좋은 방법이라고는 생각지 않습니다만
메신져 알람처럼 만들기에는 충분히 좋은 힌트가 되리라 생각합니다.

개인적으로 메신져같은 알람창을 몇년전에 한번 만들었는데
계속해서  여러프로그램에서 써먹고 있네요 ㅋㅋ

그럼 수고하세요



           
   
     
    


김석찬 님이 쓰신 글 :
: 안녕하세요 언제나 모르면 여기다 물어보는게 습관이된 kalsman 입니다.
:
: 오늘은..메신져 등에서 보면 누군가 접속했거나, 누군가 메시지를 보내면
:
: 트레이아이콘이 있는 우측 하단에서
:
: 조그마한 창이 밑에서 슬라이딩 되면서 나타는 창 ( 이놈을 알림창 이라고 하는지..??)
:
: 하여간 이런 창을 어떻게 구현하는지요?
:
: 힌트도 좋구요, 어떤 사이트 든. 설명된 곳이라도 좋습니다.
:
: 이것과 관련된 정보를 좀 나눠주시면 감사하겠습니다.
:
: 그럼 오늘 하루도 편안하시길 바라며...

+ -

관련 글 리스트
48826 메신져 등의 알림창 어찌 만드는지요? 김석찬 1110 2007/04/09
48829     Re:메신져 등의 알림창 어찌 만드는지요? 장성호 2381 2007/04/09
48831         Re:Re:메신져 등의 알림창 어찌 만드는지요? 김석찬 1380 2007/04/09
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.