TBitmap
VCL поддерживает только изображения BMP. Если вы попытаетесь загрузить в него любое другое изображение, вы получите исключение.
Чтобы загрузить JPG, вам нужно использовать TJPEGImage
. Чтобы загрузить PNG, используйте вместо этого TPNGImage
.
Вы можете использовать TPicture
, чтобы помочь вам с этой задачей, например:
uses
..., Vcl.Graphics, Vcl.Imaging.jpeg, Vcl.Imaging.pngimage;
function resize2(source: string): TBitmap;
var
Pic: TPicture;
begin
Pic := TPicture.Create;
try
Pic.LoadFromFile(source);
Result := TBitmap.Create;
try
if Pic.Graphic is TBitmap then
Result.PixelFormat := TBitmap(Pic.Graphic).PixelFormat
else
Result.PixelFormat := pf32bit;
Result.Width := 10;
Result.Height := 10;
Result.Canvas.StretchDraw(Rect(0, 0, Result.Width, Result.Height), Pic.Graphic);
except
Result.Free;
raise;
end;
finally
Pic.Free;
end;
end;
procedure TAlpha.dbeditTextBoxChange(Sender: TObject);
var
pic1: string;
mimapa: TBitmap;
begin
try
pic1 := dm.TableNotes.FieldByName('PathPic').AsString;
mimapa := resize2(pic1);
try
image2.Picture.Assign(mimapa);
finally
mimapa.Free;
end;
...
except
...
end;
end;
4.0 будет, другой рядом выпускает, из какого я читал.
http://blogs.msdn.com/wenlong/archive/2008/09/07/net-4-0-wf-wcf-and-oslo.aspx
Да.NET 4.0 представит новую версию CLR (который также будет в 4,0). ДОЛЛАР по существу станет частью базовой платформы, но это будет все еще находиться сверху CLR.
Чтобы указать это еще один способ - согласно Microsoft Visual Studio 2010 и .NET Framework 4 Training Kit - 4.0 будет стоять сам по себе (т. е. не будет располагаться поверх 2.0, как 3.0 или 3,5 сделал). Совершенно новый фреймворк и новый CLR.
Что касается DLR, то он располагается поверх BCL, как Linq, WinForms и WPF (т.е. DLR -> BCL -> CLR)
Чтобы просмотреть слайд PowerPoint с подробным описанием этого, нажмите «Обзор» (правая сторона) -> «Круг вокруг .NET Framework 4», затем щелкните одноименный слайд PowerPoint. Посмотрите на второй и третий слайды.