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
[75584] Dock 질문입니다.
ㅇㅇ [] 2033 읽음    2019-09-18 10:26
         while(1)
	{
		HWND hForeground;
		DWORD id, foreground_id;

		hForeground = GetForegroundWindow();
		if (hForeground != FormMain->Handle)
		{
			foreground_id = GetWindowThreadProcessId(hForeground, NULL);
			id = GetWindowThreadProcessId(FormMain->Handle, NULL);
			if (AttachThreadInput(id, foreground_id, TRUE))
			{
				BringWindowToTop(FormMain->Handle);
				AttachThreadInput(id, foreground_id, FALSE);
			}

		}
	}


현재 위에 있는 코드를 사용해서 도커를 맨 위에 위치하도록 하고 있습니다..
FormStyle을 fsStayOnTop으로 설정하는 방식으로 하면 도커가 항상 맨 위에 위치하기는 하는데, 프로그램이 활성화 상태임에도 불구하고 DockItem이 활성화가 안되더라구요..
그래서 이 방식을 썼는데. 위에 있는 코드를 사용하면 도커가 띄워져 있는 상태에서 다른 프로그램을 활성화해서 사용할 경우 제약이 있네요..도커때문에 다른 프로그램 버튼 클릭했을 때 가끔 클릭이 안먹거나 그런거요..

제가 구현하고 싶은건 이건데요
1. 도커가 항상 맨 앞에 위치할 것
2. 맨 앞에 위치되어 있어도 다른 프로그램을 활성화 하여 사용할 수 있을 것
3. 도커가 활성화된 상태에서는 DockItem이 활성화 될 것

어떤 방식으로 구현하는게 좋을지 조언 부탁드립니다ㅠㅠ 도커 컴포넌트는 TMS의 advsmoothdock을 사용하고 있습니다.

+ -

관련 글 리스트
75584 Dock 질문입니다. ㅇㅇ 2033 2019/09/18
75585     자답) 어이없게 해결됐네요.. ㅇㅇ 2150 2019/09/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.