Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.10.2010, 01:52   #1
admroot
Пользователь
 
Аватар для admroot
 
Регистрация: 14.04.2009
Сообщений: 15
По умолчанию Проверка размеров изображения

При нажатии на кнопку открывается диалоговое окно с выбором изображения... Хочу сделать проверку, если изображение слишком маленькое то показать сообщение и не загружать его в Image1

Вот сама процедура - не работает

Код HTML:
procedure TForm1.Button1Click(Sender: TObject);
begin
OpenPictureDialog1.Execute;
if (Form1.Image1.Picture.Width; > 100) AND (Form1.Image1.Picture.Height > 100) then
ShowMessage ('Размер изображения слишком мал')
else
Image1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
OpenPictureDialog1.FreeOnRelease;
end;
В чем проблема, кто подскажет где я ошибся?
admroot вне форума Ответить с цитированием
Старый 24.10.2010, 02:06   #2
MadReason
Ищу работу
Форумчанин
 
Аватар для MadReason
 
Регистрация: 16.02.2007
Сообщений: 269
По умолчанию

для вычисления размеров имэйджа в него нужно сначала что-то подгрузить, а вы подгружаете после проверки.
как вариант сначала загружать в невидимый имэйдж, если подходит то копировать от туда изображение в основной. или через спецификацию, считывать из файла блок отвечающий за размер
Пишу на Delphi все что угодно, недорого, красиво, с комментариями
###icq 107335###
MadReason вне форума Ответить с цитированием
Старый 24.10.2010, 02:38   #3
yasic
Пользователь
 
Регистрация: 27.09.2010
Сообщений: 44
По умолчанию

.....
var
Form1: TForm1;
Pic : TBitmap;
implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
Pic := TBitmap.Create;
Pic.LoadFromFile('c:\test.bmp');
if (Pic.Height < 100) AND (Pic.Width < 100) then
Image1.Canvas.Draw(0, 0, Pic) else
ShowMessage('Изображение слишком велико!');
end;

end.
yasic вне форума Ответить с цитированием
Старый 24.10.2010, 02:40   #4
yasic
Пользователь
 
Регистрация: 27.09.2010
Сообщений: 44
По умолчанию

путь к изображению сам получишь
yasic вне форума Ответить с цитированием
Старый 24.10.2010, 02:40   #5
admroot
Пользователь
 
Аватар для admroot
 
Регистрация: 14.04.2009
Сообщений: 15
По умолчанию

Цитата:
Сообщение от MadReason Посмотреть сообщение
для вычисления размеров имэйджа в него нужно сначала что-то подгрузить, а вы подгружаете после проверки.
как вариант сначала загружать в невидимый имэйдж, если подходит то копировать от туда изображение в основной. или через спецификацию, считывать из файла блок отвечающий за размер
Спасибо огромное. не знал что delphi не умеет считывать загружаемые изображения на лету.
admroot вне форума Ответить с цитированием
Старый 24.10.2010, 03:25   #6
admroot
Пользователь
 
Аватар для admroot
 
Регистрация: 14.04.2009
Сообщений: 15
По умолчанию

Цитата:
Сообщение от yasic Посмотреть сообщение
путь к изображению сам получишь
огромное спасибо... все работает как надо
admroot вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Настройка размеров меню. Alex Cones HTML и CSS 4 25.09.2010 16:45
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" ruelCrow Общие вопросы .NET 3 10.07.2008 23:29
Изменение размеров pinksky Microsoft Office Excel 3 18.04.2008 15:52
Изменение размеров элементов romets Win Api 2 18.02.2008 23:28
Определение размеров картинки Kocapb Общие вопросы C/C++ 1 03.12.2007 20:49