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
[7504] Re:[질문]폼의 위치 지정하기(2)
레조 [lezo] 1761 읽음    2001-05-16 15:58
작업표시줄의 크기를 구하는 내용입니다.

    long TaskBarH;
    APPBARDATA structBarData;

    long l, r, t, b;

    structBarData.cbSize = (unsigned long)sizeof(APPBARDATA);

    TaskBarH = SHAppBarMessage(ABM_GETTASKBARPOS, &structBarData);

    l = structBarData.rc.left;
    r = structBarData.rc.right;
    t = structBarData.rc.top;
    b = structBarData.rc.bottom;

    Label1->Caption = IntToStr(t);
    Label2->Caption = IntToStr(l);
    Label3->Caption = IntToStr(r);
    Label4->Caption = IntToStr(b);

간단한 소스라 그냥 소스만 달랑 올려놓았습니다. ^^; 양해를..
APPBARDATA를 따라가보시면 구조체가 보일것입니다.
SHAppBarMessage API를 사용해서 구한겁니다.
자세한건 MSDN을 보십시요. ^^;



kobetime 님이 쓰신 글 :
: 지난 글에 이어서 다시 질문합니다.(장원석님 답변 감사합니다...^^)
:
: 폼의 위치를 지정하기 위해 머리를 써봤는데요,
: 좌측상단에 띄우기 위해 다음과 같이 했습니다.
: (MainForm1은 폼의 이름입니다)
: MoveWindow(MainForm1->Handle, Left - Left, Top - Top,
:                                 MainForm1->Width, MainForm1->Height, NULL);
:
: 위는 문제 없이 떴습니다.
:
: 다음은 좌측하단에 띄우기 위해 짠겁니다.
:
: MoveWindow(MainForm1->Handle, Left - Left, Screen->Height - MainForm1->Height,
:                                 MainForm1->Width, MainForm1->Height, NULL);
:
: 위에서 문제가 생겼는데, 작업표시줄이 폼을 가린다는겁니다...--;
: Screen->Height가 작업표시줄을 무시한 수치인것같은데,
: 작업표시줄 뒤로 일부분 숨어버리니 이상해보입니다.
:
: 폼을 작업표시줄 위쪽으로 올리려면 어떻게 해야하죠?
: 답변 부탁드립니다.
:

+ -

관련 글 리스트
7488 [질문]폼의 위치 지정하기(2) kobetime 1564 2001/05/16
7504     Re:[질문]폼의 위치 지정하기(2) 레조 1761 2001/05/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.