몇가지 방법이 있는데요..
1) 따로 파일로 저장
Form의 Caption이나
ComboBox의 Items들이나 등을 모두 따로 Text파일에 저장해 뒀다가
Application에서 언어 설정을 바꿀때 ..
그때 파일의 내용을 모두 읽어와서 폼과 폼위에 올려진 모든 Component들의 string을 변경해줍니다.
코딩이 좀 필요하겠죠
2) Resource Dll Wizard 이용
- 프로젝트를 open한 상태에서
- 메뉴 File-> New ->Other 클릭해서 New 탭에 보면
"Resource Dll Wizard" 라는게 있습니다.
- 그걸 선택해서 next-next하다보면 언어 선택하는 창이 나오는데..
그거시 필요한 언어(한글,영어,일어 등..)들을 선택하시구요
- 그다음에 Translation Manager 창이 나오는데..
거기서 언어별로 text를 입력하시면 되구요
- 아니면..
ProjectGroup에 언어별로 project가 추가되는데..
예를 들어 프로젝트명이 Project1이면
한글은 Project1.KOR
영어는 Project1.ENU
해당 프로젝트를 열면 Project1에 있는 폼과 똑같은 폼이 있습니다.
그 폼에서 caption등을 변경하시면 됩니다.
- 컴파일 하면
Project1.exe 하나와 Project1.ENU 라는 dll과 Project1.KOR라는 dll이 생성됩니다.
- Project1.exe 이 시작될때 register에서 언어 설정을 읽어와서
- 언어가 영어면 Form을 생성할때 Project1.ENU 라는 dll에서 리소스를 읽어서 폼을 생성하고
언어가 한국어이면 Project1.KOR이라는 dll에서 리소스를 읽어와서 폼을 생성합니다.
- 언어 설정의 변경은?
윈도우s 레지스터리 "Software\\Borland\\Locales" 에 정보가 기록됩니다. (최신버젼을 잘모르겠음)
http://cbuilder.borlandforum.com/impboard/impboard.dll?action=read&db=bcb_qna&no=50790
언어 설정을 바꾼다고 해서 곧바로 폼에 언어가 변경되는것은 아닙니다.
Form을 생성할때 참조할 resource-dll 을 변경한 것 뿐이니..
실제로 다시 폼을 생성해야 되겠쬬
두번째 방법은 메뉴에서 언어 설정 변경하는 즉시
실시간으로 모든 caption을 변경하기는 까다로운 부분이 있으니
그럴경우 첫번째 방법을 이용하시는것이 좋을것 같구요..
다양한 언어 지원, 편리한 변경등을 하고자 할땐..
"Resource Dll Wizard" 를 이용하는방법도 괜찮을것 같습니다.
그럼..
김민호.소중한꿈 님이 쓰신 글 :
: 지금 현재 프로그램을 하나 만들고 있는 중입니다.
:
: 그런데 사용자 측에서 메뉴를 옵션에서 한글 또는 영어로 선택할 수 있도록 해줄 수 있는지를 요구하였습니다.
:
: 제가 지금껏 이렇게 해본 적이 없어서 조금 막막한데요. 뭔가 리소스 부분을 건드려야하는 것인지요?
:
: C++ Builder에서 메뉴를 한글, 영어로 바꿀 수 있도록 프로그래밍 하는 방법이 어떤 것인지를 알고 싶습니다.
:
: 그럼, 다들 즐프하세요.