2010-08-02 17 views
9

tôi đã tạo một imagelist với 20 bitmap bên trong và một giá trị dropdownlist từ 1 đến 20. khi tôi chọn danh sách thả xuống, nó sẽ hiển thị bitmap tương ứng với chỉ mục thả xuống. Tôi đang đối mặt với vấn đề rằng nó tiếp tục hiển thị cùng một hình ảnh khi tôi chọn danh sách thả xuống và hình ảnh quá nhỏ. Bất kỳ ý tưởng để slove vấn đề này? và làm cho hình ảnh lớn hơn?hiển thị các mục tưởng tượng trong Timage

procedure TForm1.FormShow(Sender: TObject); 
var 
    i : integer; 
begin 
    for i:=0 to 20 do begin 
    cboIcon.Items.Add(inttostr(i)); 
    end; 
end; 

procedure TForm1.cboIconChange(Sender: TObject); 
begin 
    ImageList1.Draw (Image1.Canvas, 0,0, cboIcon.ItemIndex); 
end; 

Trả lời

14

Bạn có thể thử mã này:

Image1.Stretch := true; // to make it as large as Image1 
Image1.Proportional := true; // to keep width/height ratio 
Image1.Picture.Bitmap:= nil; // clear previous image 
ImageList1.GetBitmap(cboIcon.ItemIndex, Image1.Picture.Bitmap); 
+0

Bạn không cần phải "thử mã này", bạn phải sử dụng mã này !! –

+4

Bạn có thể muốn thêm Image1.Picture.Bitmap: = nil trước khi tải, nếu không nó sẽ không hiển thị hình ảnh tiếp theo. –

+0

chúng ta chỉ cần chỉnh sửa nó để hiển thị toàn bộ. làm xong. –

Các vấn đề liên quan