procedure Tform1.Drop(var Msg: TWMDROPFILES);
var
WinHnd: HWND; //ウィンドウのハンドル
fn: array [0..MAX_PATH] of Char;
begin
WinHnd := FindWindow('TForm1', nil);
SetForegroundWindow(WinHnd);
DragQueryFile(Msg.Drop, 0, fn, MAX_PATH);
Image1.Picture.LoadFromFile(fn);
Form1.Height := Image.Picture.Height;
Form1.Width := Image.Picture.Width;
Form1.Constraints.MaxHeight := Image.Picture.Height;
Forn1.Constraints.MaxWidth := Image.Picture.Width;
end;
フォームにTImageをクライアントで貼り付け、D&Dしたファイルを表示する、というアプリです
ここで、最後の幅と高さを変える処理なんですが、最大の幅と高さを変える処理はうまくいってるのですが、
Formの幅と高さ(表示上の幅と高さ)を変えるところがうまく動いてくれません
もう少し具体的に言うと、
一度小さいサイズのファイルを読み込みます(正しくサイズ変更が行われる)
次に大きいサイズのファイルを読み込むと、小さいファイルを表示した際の大きさのままで表示されます
もう一度同じファイルを読み込むと、正しいサイズになって表示されます
理由と対処法を教えて下さい
宜しくお願いします
Drop(var Msg: TWMDROPFILES);の最後のに
Forn1.Updateを挿入してみればどうなるでしょう。
こちらでやってないからわからないけど。
無責任ですいません。
あれ?解決されてるジャンこれ
すいません〜
2個書き込んじゃったとは思わず・・・^^;
ごめんなさい><
解決です!!
ツイート | ![]() |