2009-12-09 2 views
0

TImage를 사용하여 이미지를 표시하는 Delphi 응용 프로그램이 있습니다. 바로 아래에 유사한 코드를 사용하여TPicture의 Filename을 직접 검색 할 수 있습니까?

이미지의 위치는 데이터베이스에 저장되고 부하에 검색 및 설정 :

내가 표시하고 파일 이름은 위의 기간 동안로드 편집 할 수 있도록하려면
Image1.Picture.LoadFromFile(Query1.FieldByName('image').AsString); 

, TImage 구성 요소에서 직접 액세스 할 수있는 방법이 없으며 파일 이름을 따로 저장해야합니까?

답변

10

아니요, 없습니다. 그래도 직접 저장할 수 있습니다.

 
var 
    ImageFileName: string; 


begin 
    ImageFileName := Query1.FieldByName('image').AsString; 
    Image1.Picture.LoadFromFile(ImageFileName); 
end; 

ImageFileName 변수가 파일 이름에 액세스해야하는 모든 위치에 표시 될 위치에 선언하십시오.

+0

켄의 오른쪽 (Firemonkey하지 VCL에서), LoadFromFile 구성 요소로 사진 데이터를 얻기 위해 단지 방법, 파일 이름은 어디에도 저장되지 않습니다. –

+0

고마워요, 그게 내가 생각한 것입니다. 단지 적절한 변수를 유지할 필요없이 검색 할 방법이 없다는 것을 확인하고 싶었습니다. –

+2

어디서나 파일 이름을 "검색"할 수있는 것은 아닙니다. . TImage 구성 요소는 파일 이름을 전혀 저장하지 않습니다. 데이터가로드 된 후에는 어디에서 왔는지는 TImage에는 아무런 관심이 없습니다. 실제로 실제로는 Picture의 데이터가 어디인지 알지 못합니다. 스트림에서 왔을 수도 있고 Assign() 일 수도 있습니다. 에드 ... 등). 그것이 파일에서 왔고 파일 이름이 무엇인지 알 필요가 있다면 코드에 추적 정보를 직접 추가해야합니다. 이것을 많이 필요로한다면, 원하는 것을하는 새로운 TImage 클래스를 파생시킬 수 있습니다. – Deltics

2

Image1의 Hint 속성에 파일 이름을 저장할 수 있습니다.

아직 사용하지 않으 셨다면. 의도 한대로 또는 다른 purpouse ... 나는이 속성 꽤 무차별 찾을 수 있습니다.

+1

불행히도 이미 다른 속성에 힌트를 사용하고 있습니다. 내가 물어 본 이유 중 하나는 Google을 통해 아무런 언급도 찾을 수 없었고, 내 가정은 정확했지만 확인하는 것이 좋을지라도. 그리고 희망적으로 다른 사람이 같은 것을 궁금해하는 기록을 남기십시오. –

0

Image1의 TagString 속성에 파일 이름을 저장할 수 있습니다.

아직 사용하지 않으 셨다면.

+2

'TImage'는'TagSTring' 속성을 갖고 있지 않은 것 같습니다 - 참조를 제공 할 수 있습니까? –

+1

VCL에는 없지만 firemonkey는 다음과 같습니다. –