2009-07-02 3 views
1

현재 인코딩 옵션이 있으므로 TOpenTextFileDialog를 사용하지만 Vista에서는 이전의 열린 대화 스타일을 사용하여 나타납니다. 나는 새로운 스타일을 열고 싶습니다만, 사용자 정의 문자열로 채울 수있는 인코딩 콤보 박스를 가지고 있습니다. 기본적으로 Notepad가 Vista에서 보여주는 정확한 열기 대화 상자가 필요합니다. 물론 해당 저장 대화 상자도 필요합니다.Vista에서 인코딩 콤보 상자가있는 파일 열기 대화 상자

일부 조사를 수행 한 결과 OFN_ENABLETEMPLATE 플래그로 인해 Vista 일반 대화 상자가 이전 스타일로 되돌아가는 것으로 보입니다. 불행히도 TOpenTextFileDialog가 인코딩 컴보 박스를 추가하도록 창을 수정할 수있게 해주는 플래그입니다. (내가 제대로 이해하면 정상적으로 이해할 수 있습니다.)

Vista에서 원하는 것을 얻는 방법에 대한 제안이있는 사람이 있습니까? ? Windows 7에서도 같은 문제가 발생한다고 가정합니다. 나는 D2009를 사용하고 있습니다. 어떤 제안이나 도움을 주셔서 감사합니다!

+0

엠바 카데로의 퀄리티 센트럴에 대한 기능 요청을 추가했습니다 : http://qc.embarcadero.com/wc/qcmain.aspx?d=83605 –

답변

3

Vista에서는 파일 대화 상자를 다루는 새로운 방법이 소개되어 IFileDialog 인터페이스에 대한 자세한 내용을 알아 보거나 this blog post을 살펴보십시오. 자신이 말한대로 OFN_ENABLETEMPLATE 플래그를 사용하면 Vista 일반 대화 상자가 이전 스타일로 되돌아갑니다.

델파이 2007와

과 2009 년에는 비스타 대화 상자 부품 카테고리에서 TFileOpenDialogTFileSaveDialog 사용할 수 있습니다. 당신이 사람들을 위해 TOpenTextFileDialog를 계속해야 Vista 이전 윈도우 버전과 응용 프로그램이 호환, 당신은 비스타에 있는지 여부를 런타임에 확인하고 새로운 대화 상자를 사용하여 다음을 수행 할 수 있습니다

if Win32MajorVersion >= 6 then begin 
    // use TFileOpenDialog 
    // ... 
end else begin 
    // use TOpenTextFileDialog 
    // ... 
end; 

을 이제 당신은 단지를 추가해야 Vista 대화 상자의 사용자 정의. The blog postOnExecute에 대한 처리기를 추가하여 (IFileDialog 인터페이스가 이미 설정 되었기 때문에) IFileDialogCustomize 인터페이스에 대한 파일 대화 상자의 Dialog 멤버를 쿼리하고 추가 컨트롤을 추가합니다.

+0

감사합니다! 그게 정확히 내가 찾고 있던거야! 그 블로그에 다른 사람들에게 도움이 될 수있는 몇 가지 추가 정보가있는 코멘트를 추가했습니다. 또한 msdn 문서에 대한 링크는 http://msdn.microsoft.com/en-us/library/bb775912.aspx입니다. – MarkF

관련 문제