리소스 파일에서 이미지 또는 메시지 문자열을로드하기위한 패턴 (소프트웨어 디자인 패턴)이 있습니까?리소스 라이브러리의 소프트웨어 디자인 패턴?
0
A
답변
4
패턴은 특정 상황에 대한 일반적인 해결책을 설명합니다. 그것은 하나의 명령에 관한 것이 아니라 더 큰 구조에 관한 것입니다. 리소스 파일에서
로드 이미지 나 메시지 문자열은 간단한 명령으로 귀결 즉
LoadString (HINSTANCE, UINT, LPTSTR, int)
그래서 당신이에 대해 "패턴"을 찾을 수 있다고 생각하지 않습니다.
1
1. 텍스트 자원
텍스트 자원을 사용하려면, 더 간단한 텍스트를 저장할 수는 resourcestring 구현하는 것입니다 :
resourcestring
sMsgHello = 'Hello world';
begin
ShowMessage(sMsgHello); // will be loaded from resource
end;
자원에서 일정한 부하로 sMsgHello으로 생각하십시오. 기본적으로 코드에 작성된 텍스트가 포함됩니다.
텍스트가 소스 코드에서 정의되지 않은 경우 LoadResString() Delphi 함수 또는 LoadString() API를 호출 할 수 있습니다.
2. 기타 자원 텍스트가 아닌 자원에 대한
은 가장 간단 TResourceStream을 사용하는 것입니다
var
RS: TStream;
s: string;
begin
RS := TResourceStream.Create(HInstance,'ResName','TXT');
try
SetString(s,PChar(RS.Memory),RS.Size);
Memo.Text := s;
finally
RS.Free;
end;
end;
자원은 매우 강력 할 수있다. find here ZIP을 리소스로 포함시킨 다음 필요한 경우 내부 압축 파일을 읽을 수 있습니다. 리소스는 exe 내에서 메모리 매핑되므로 요청시에만 메모리에로드됩니다. 내부에 많은 리소스가있는 거대한 exe를 가질 수 있습니다. 즉, 즉시로드됩니다. 필요할 때만 리소스가 디스크에서 읽혀집니다.
관련 문제
- 1. 회계 소프트웨어 디자인 패턴
- 2. .NET의 유용한 소프트웨어 디자인 패턴
- 3. 구성 가능한 리소스 - 디자인 패턴
- 4. PHPSpec 라이브러리의 코딩 표준 및 디자인 패턴
- 5. 소프트웨어 아키텍처 : 작업 디자인 패턴 토론의 단위
- 6. 소프트웨어 디자인 패턴 MVC 창 생성 전략
- 7. 클래스 라이브러리의 전역 리소스
- 8. 디자인 패턴 - 전략 패턴
- 9. 디자인 패턴
- 10. 소프트웨어 디자인 문제 : 순환 종속성
- 11. 직렬 통신 디자인 패턴
- 12. 디자인 패턴 실제 예제
- 13. 오토마타 디자인 소프트웨어
- 14. 학생용 데이터베이스 디자인 소프트웨어?
- 15. 디자인 방화벽 소프트웨어
- 16. 조직 된 소프트웨어 디자인
- 17. 소프트웨어 디자인 웹 사이트
- 18. Javascript Traits 패턴 리소스
- 19. 파일에서 객체를 생성하기위한 디자인 패턴?
- 20. CFML 디자인 패턴 리소스를 원하십니까?
- 21. WP7 디자인 템플릿 리소스
- 22. Silverlight 디자인 관련자를위한 리소스
- 23. 리포지토리 디자인 패턴 및 데코레이터 디자인 패턴 사용
- 24. 옵션 기능을위한 디자인 패턴?
- 25. 트랜잭션 디자인 패턴
- 26. Delphi 2009의 디자인 패턴
- 27. OCaml의 방문객 디자인 패턴
- 28. Zend_Form와 OOP 디자인 패턴
- 29. MVVM 디자인 패턴
- 30. 어떤 디자인 패턴/RTTI
다국어 지원이 가능한 더 큰 프로젝트를 생각해보십시오. – Pavan
Pavan, 프로젝트의 크기에 관계없이 리소스 파일에서 물건을로드하기위한 "패턴"은 항상 "리소스로드"입니다. 그 위에 다른 추상화를 쌓을 수 있지만 패턴을 변경하지는 않습니다. 분명히, 패턴은 당신이 찾고있는 것이 아닙니다. 어쩌면 당신은 "모범 사례"또는 "숙어"에 대해 묻고있을 것입니다. –