有几个image和一个edit,如何在edit中输入一个图片编号后回车,改变第一个image中的图片;然后再输入一个图片编号后回车,改变第二个image中的图片...有8到9个image.我能够在一个image中改变图片,但是不知道如何改变下一个image中的图片。希望大家帮助我,谢谢。我的代码:
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
aa:string;
begin
if key=#13 then //按回车键后
begin
getdir(0,aa);
aa:=aa+'\图片\'+edit1.Text+'''.jpg'; //得到图片保存路径
image1.Picture.LoadFromFile(aa);
edit1.Clear;
end;
end;
procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
var
aa:string;
begin
if key=#13 then //按回车键后
begin
getdir(0,aa);
aa:=aa+'\图片\'+edit1.Text+'''.jpg'; //得到图片保存路径
image1.Picture.LoadFromFile(aa);
edit1.Clear;
end;
end;
解决方案 »
- 在oracle数据库中遇到时间查询的问题
- delphi生成EXE文件时检测有没dat文件才能生成exe
- 关于窗体显示的问题?
- 创建漫画式飞跃提示?yczyk、lgqTiger、senhor、ghyghost、menggirl
- 一个非常头疼的flash播放问题!!!
- 一个关于表格的问题,急,还请高手指教。
- 这句SQL该怎么写?
- 怎样禁止一个TEdit控件的鼠标右键?
- 很简单的SQL语句!!但菜鸟千万别进来^_^ --------------分不够再加
- 如何截取这样的字符串?
- 我要调用WinExec,但是不知道strnig如何转化为LPCTSTR?
- http://www.anetsoft.com 有制作帮助文件试用版,可谁知道注册码?
image1.Picture.LoadFromFile(aa);
变成
image2.Picture.LoadFromFile(aa);
不就可以了嘛
只不过代码太罗嗦了,我在想想
panel.conrols[i]来控制第i个image的变化需要类转换
TImage(panel.conrols[i]).Picture.LoadFromFile('filename');
var
i,cc:integer; cc你的图片数量
aa:string;
pictures Array of string;保存图片文件路径
begin
for i:=1 to cc do begin
if key=#13 then //按回车键后
begin
getdir(0,aa);
aa:=aa+'\图片\'+edit1.Text+'''.jpg'; //得到图片保存路径
image(i).Picture.LoadFromFile(pictures[i]);
edit1.Clear;
end;
end;
end;
“你用一个全局变量来保存是第几次按回车键,这样根据次数来判断应该修改第几个image”
我认为也有缺陷,要是你按回车键次数过多呢?最主要的我认为,你这样操作不直观,用户按回车键次数过多他怎么知道现在要改变的是哪个Image?所以我想你最好加入比如像 RadioGroup 这样的东西可能会好控制多了。个人拙见,仅供参考。
设置所有image为非可视的。控制其可视属性。image少了的话完全可以啊,呵呵:)