Delphi에서 다른 모든 윈도우 위에 윈도우를 유지할 수 있습니까? 예를 들어 애플리케이션에 오류 메시지가있는 경우 창을 맨 위에두고 다른 작업을 수행하기 전에 사용자가 무언가를 클릭해야하는지 확인하려고한다고 가정 해 봅시다. 백그라운드에서 다른 프로그램을 클릭하는 것과 같은 의미입니다. 그리고 Java는 어떻습니까?Delphi 또는 Java에서 윈도우를 계속 유지하십시오.
답변
옛날에 이렇게 할 수있었습니다. 시스템 모달 대화 상자라고하며 이제는 쓸모없는 SetSysModalWindow()
함수를 사용했습니다.
그들은 Windows NT 기반 버전의 Windows가 사용되면서 완전히 혐오스러워서 의식과 복원이 복원되었습니다.
델파이에서는 FormStyle:=fsStayOnTop;
을 사용할 수 있습니다. 그러면 모든 일반 창 앞에 나타납니다.
하지만 스타일 모음이 설정된 다른 창 (예 : 작업 표시 줄)이 사용자의 앞에있을 수도 있습니다. 특히 그 창들 가운데 초점이있는 것이 가장 중요합니다.
창에 항상 포커스가 있는지 확인할 수는 있지만 거의 좋은 아이디어는 아닙니다. 그리고 당신은 레이몬드의 비난을받을 것입니다.
계층 창을 사용할 수도 있습니다. 나는 그것들이 정상적인 항상 맨 위에있는 창 앞에 있다고 생각한다. 그러나 이것은 심각한 부작용을 가지며 가장 올바른 선택이 될 수 없습니다.
OP는 "백그라운드에서 다른 프로그램을 클릭하는 것과 비슷합니다"라고 말하면 fsStayOnTop은 완료되지 않습니다. 어쨌든 대화 상자가 모달 (예 : 앱 - 모달) 일 수 있으므로 어쨌든 그 앱 창의 맨 위에 있기 때문에 실제로는 아무런 의미가 없습니다. –
다른 프로그램이 AlwaysOnTop을 설정하지 않은 경우 OP 프로그램을 다른 프로그램 앞에 유지합니다. – CodesInChaos
@CodeInChaos, true이지만 다른 창에서 여전히 포커스를받을 수 있습니다. 마우스를 잡아 냄으로써 더러운 트릭을 할 수 있지만 횃불과 갈퀴를 준비하십시오. –
- 1. .net에서 SIP를 사용하여 계속 유지하십시오.
- 2. 폼의 데이터를 브라우저의 앞으로 또는 앞으로 계속 유지하십시오.
- 3. iPhone에서 "라이브"앱과 "Dev"앱을 계속 유지하십시오.
- 4. TabNavigator 탭에서 선택한 항목을 계속 유지하십시오.
- 5. 왜 Delphi 프로그램의 메모리는 계속 증가합니까?
- 6. 화면을 끈 후에도 응용 프로그램을 계속 활성 상태로 유지하십시오.
- 7. gridview를 정렬 할 때 특정 값을 가진 데이터를 계속 유지하십시오.
- 8. DynamicJasper (Grails에서) 열 또는 필드를 공백으로 유지하십시오 (비어 있음)
- 9. Java에서 get() 또는 elementAt()
- 10. ADO 또는 DBX using Delphi
- 11. Delphi 3 프로젝트를 업그레이드하기위한 Delphi 2010 또는 2007?
- 12. Delphi 7은 오래 된 구식 양식을 계속 사용합니다.
- 13. 기존 윈도우를 기반으로 새 C# 윈도우를 만들려면 어떻게해야합니까?
- 14. 메인 윈도우를 최소화 한 후 자동으로 팝업 윈도우를 최소화하는 방법
- 15. Java에서 ThreadLocal 객체가 수정되면 변경 사항은 다음 요청에서 계속 유지됩니까?
- 16. Delphi Prism의 정적 또는 클래스 메서드
- 17. PyQt - 윈도우를 최상위로 설정합니다.
- 18. 코코아에서 메인 윈도우를 닫으시겠습니까?
- 19. HTTP 서버에서 응답을받은 후 연결 상태를 유지하십시오.
- 20. tomcat jndi 설정을 유지하십시오.
- 21. 데이터베이스에 설정을 유지하십시오
- 22. 모바일 사이트에 사용자를 유지하십시오.
- 23. asp.net textareafor - 개행을 유지하십시오.
- 24. 데이터베이스 정보를 안전하게 유지하십시오.
- 25. Delphi 2009를 Delphi 2006 또는 Delphi 2007과 동일한 컴퓨터에 설치할 수 있습니까?
- 26. 응용 프로그램 아키텍처 : 직렬 연결을 Java에서 계속 열어 두십시오.
- 27. Java에서 C#으로 계속 변환하는 데 도움이되는 도구
- 28. NSArray : 객체를 해제하지만 포인터를 유지하십시오
- 29. Indy (Delphi)
- 30. 메인 윈도우를 닫은 후에도 내 애플리케이션이 계속 실행되는 이유는 무엇입니까? 내가 한 경우
[아니요, ** 할 수 없습니다 **] (http://blogs.msdn.com/b/oldnewthing/archive/2011/03/10/10138969.aspx) –
, 당신의 사용자는 당신을 죽일 것이다. –
@GameCat - Ken에게 내 답을보십시오. – RBA