こんな感じで目的の動作はするのですが画像を増やせば増やすほど冗長になる気がします。どうすればもっと綺麗に書けますか?
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.Imaging.pngimage, Vcl.ExtCtrls,
Vcl.StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
procedure Button1Click(Sender: TObject);
private
{ Private 宣言 }
public
{ Public 宣言 }
end;
var
Form1: TForm1;
i: integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
i := i + 1;
if i = 1 then
begin
Image1.Visible := true;
end;
if i = 2 then
begin
Image2.Visible := true;
Image1.Visible := false;
end;
if i = 3 then
begin
Image3.Visible := true;
Image2.Visible := false;
end;
if i = 4 then
begin
Image4.Visible := true;
Image3.Visible := false;
end;
end;
end.
LoadFromFile() で画像をファイルから読み込むか、
画像をリソースに埋め込んで LoadFromResourceName() すればよろしいかと。
[Vcl.Graphics.TPicture.LoadFromFile (DocWiki)]
http://docwiki.embarcadero.com/Libraries/ja/Vcl.Graphics.TPicture.LoadFromFile
[Vcl.Graphics.TBitmap.LoadFromResourceName (DocWiki)]
http://docwiki.embarcadero.com/Libraries/ja/Vcl.Graphics.TBitmap.LoadFromResourceName
[リソースと画像 (DocWiki)]
http://docwiki.embarcadero.com/RADStudio/XE3/ja/%E3%83%AA%E3%82%BD%E3%83%BC%E3%82%B9
申し訳ありません説明不足だったので補足します。
要は画像の切り替えなのですがTimageを一つずつ追加したり毎回if文を書かずに関数を使ってスマートにしたいのです。
画像を連番にしてLoadFromFile()を使えば可能でしょうか?
もし可能であれば失礼な質問をお許し下さい。
画像は全て透過PNGで次の画像を表示すると前の画像は非表示にするという感じです。画像は500枚ほどです。
ん? 状況がさっぱり見えませんが・・・・
ニフツ等を使って必要に応じてフニニへ渡せばよいのではないの?
ヲサヤニアョツアティモコヲサヤマゥサ
ヲサヲサヲサヲサコスヲサヲサォヲサアサ
ヲサヲサヲサヲサニフツアョノョテヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサノアョミョフニニィニフツアョノロンゥサ
サ
みたいな・・・
フォルダーが複数あるならモフ等へ全画像のパスを入れておいて
ニフツ代わりに使うとか・・・
スススススススススススススススススススススススススススススススススススススススス
ニコ
トコ イーアウッーエッーエィ木ゥ アウコアカコアオ 書込者ノト:ロ 」 。 ン
アプリケーションにトトでファイルを追加すると仮定して、
オブジェクトインスペクタ画面で
ヲサヲサヲサヲサノアコヲサヤノサ
ヲサヲサヲサヲサツアコヲサヤツサ
ヲサヲサヲサヲサフツアコヲサヤフツサ
ヲサヲサヲサヲサヲサニティモコヲサヤマゥサ
ヲサヲサヲサヲサヲサフツアティモコヲサヤマゥサ
ヲサヲサヲサヲサヲサツアティモコヲサヤマゥサ
を張り付けて…
ヲサユアサ
ヲサヲサラョラャヲサラョヘャヲサモョモユャヲサモョヨャヲサモョテャヲサヨョヌャ
ヲサヲサヨョテャヲサヨョニャヲサヨョトャヲサヨョモテャヲサヨョナテャ
ヲサヲサッッ追加
ヲサヲサラョモチミノャヲサヨョノョサ
ヲサヲサヤニアヲサスヲサィヤニゥ
ヲサヲサヲサヲサノアコヲサヤノサ
ヲサヲサヲサヲサツアコヲサヤツサ
ヲサヲサヲサヲサフツアコヲサヤフツサ
ヲサヲサヲサヲサヲサニティモコヲサヤマゥサ
ヲサヲサヲサヲサヲサフツアティモコヲサヤマゥサ
ヲサヲサヲサヲサヲサツアティモコヲサヤマゥサ
ヲサヲサ
ヲサヲサヲサヲサヲサミヲサ宣言ヲサ
ヲサヲサヲサヲサヲサニニィミコゥサ
ヲサヲサヲサヲサヲサモフツサ
ヲサヲサ
ヲサヲサヲサヲサヲサミヲサ宣言ヲサ
ヲサヲサヲサヲサニノヲサコヲサノサヲサッッ開いているファイル
ヲサヲサヲサヲサニフヲサコヲサヤモフサヲサッッファイルリスト
ヲサヲサヲサヲサヲサラヘトニィヲサヘコヲサヤラヘトニゥサヲサヲサラペトメマミニノフナモサ
ヲサヲササ
ヲサヲサニアコヲサヤニアサ
、メヲサェョ
ヲサヤニアヲサ
ヲサヤニアョツアティモコヲサヤマゥサ
ヲサヲサニフョテサ
ヲサヲサノアョミヲサコスヲササ
ヲサヲサモフツサ
サ
ヲサヤニアョニニィミコヲサゥサ
ヲサヲサコヤモメサ
ヲサヲサヲサニナィミゥヲサヲサヲサッッファイル
ヲサヲサ
ヲサヲサヲサヲサヲサフティナニナィミゥゥスァョァヲサヲサッッョファイル追加
ヲサヲサヲサヲサヲサヲサニフョチィミゥサ
ヲサヲサヲサ
ヲサヲサヲサトナィミゥヲサヲサヲサッッフォルダ
ヲサヲサ
ヲサヲサヲサヲサミヲサコスヲサノヤミトィミゥサ
ヲサヲサヲサヲサヲサニニィミォァェョェァャチニャゥスーヲサ
ヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサヲサョチヲサヲサトヲサスヲサトヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサィョホヲサヲサヲサヲサァョァゥヲサヲサィョホヲサヲサヲサヲサァョョァゥヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサニニィミォョホゥサヲサッッサブディレクトリ検索
ヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサフティナニナィョホゥゥスァョァヲサ
ヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサヲサニフョチィミォョホゥサヲサッッョファイル追加
ヲサヲサヲサヲサヲサヲサヲサヲササ
ヲサヲサヲサヲサヲサヲサヲサニホィゥヲサヲサヲサヲサーサ
ヲサヲサヲサヲサヲサヲサニティゥサ
ヲサヲサヲサヲササ
ヲサヲササ
サ
ヲサヤニアョニティモコヲサヤマゥサ
ヲサヲサトチニィネャヲサヤゥサ
ヲサヲサニフヲサコスヲサヤモフョテサ
ヲサヲサツアョテヲサコスヲサァクリアァサ
サ
ヲサヤニアョフツアティモコヲサヤマゥサ
ヲサヲサニノヲサコスヲサフツアョノノサ
ヲサヲサッッ画像読み込み
ヲサヲサヲサニノヲサヲサスヲサーヲサ
ヲサヲサヲサヲサノアョミョフニニィニフロニノンゥサ
サ
ヲサヤニアョモフツサ
ヲサヲサフツアョノヲサコスヲサニフサ
ヲサヲサニノヲサコスヲサニフョテュアサ
ヲサヲサヲサニノヲサーヲサヲサナサ
ヲサヲサフツアョノノヲサコスヲサニノサ
サ
ヲサヤニアョラヘトニィヲサヘコヲサヤラヘトニゥサ
ヲサヲサニテャヲサコヲサノサ
ヲサヲサニホコヲサローョョヘチリ゜ミチヤネンヲサヲサテサ
ヲサヲササ
ヲサヲサテヲサコスヲサネヌサ
ヲサヲサニテヲサコスヲサトムニィヘョトャヲサ、ニニニニニニニニャヲサャヲサーゥサヲサッッドロップされたファイル数の取得
ヲサヲサヲサヲサコスヲサーヲサヲサニテヲサュヲサアヲサ
ヲサヲサ
ヲサヲサヲサヲサトムニィヘョトャヲサャヲサニホャヲサヘチリ゜ミチヤネゥサ
ヲサヲサヲサヲサニニィニホゥサ
ヲサヲササ
ヲサヲサトニィヘョトゥサ
ヲサヲサテヲサコスヲサトサ
ヲサヲサモフツサ
サ
ョ
スススススススススススススススススススススススススススススススススススススススス
ニコ モ
トコ イーアウッーエッーエィ木ゥ アウコオキコエキ 書込者ノト:ロ 「ィ「「」 ン
あれ? 条件判定が間違ってる・・・ィ゛゛サ
ヲサヤニアョツアティモコヲサヤマゥサ
ヲサヲサヲサヲサヲサコスヲサヲサォヲサアサ
ヲサヲサヲサヲサニフツアョノョテヲサヲサヲサヲサ
ヲサヲサヲサヲサヲサヲサノアョミョフニニィニフツアョノロンゥサ
サ
ですね・・・
スススススススススススススススススススススススススススススススススススススススス
ニコ
トコ イーアウッーエッーエィ木ゥ アエコオクコアウ シ スュアセシ上級者セ シッニセシノヘヌ ス「コッッョョョッッウョ「 ス「ー「セ 書込者ノト:ロ 」。ァ」。 ン
似たような質問がありますね。
コッッョョョッュットツツモッョソォイーーケーケッーケーケーーイキョ
ツイート | ![]() |