Последние записи
- Преобразовать массив байт в вещественное число (single)
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
- Ресайз PNG без потери прозрачности
- Вывод на печать графического файла
- Взаимодействие через командную строку
- Перенести программу из Delphi в Lazarus
- Определить текущую ОС
- Автоматическая смена языка (раскладки клавиатуры)
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
6th
Янв
Запомнить положение и размер image
Posted by maloy under Заметки
Лукманов Александр
Мне нужно сохранить размер и положение Image на форме. А затем расположить Image в сохраненном виде. У меня программа пока даже не сохраняет данные в ini файл. Подскажите плиз как, что и в чём ошибка.
Пытаюсь сохранить параметры Image. После нажатия нажатия на кнопку ошибку не выдаёт, а файл пустой. На форме Image присутствовали.
TPos = record
Pleft, Ptop, Pwidth, Pheight: Integer;
Pname: string[255];
******
b: file of TPos;
b1: TPos;
i1: Integer;
******
procedure TForm1.btn2Click(Sender: TObject);
begin
for i1:=0 to ComponentCount-1 do begin
if Components[i1] is TImage then
begin
AssignFile (b, '1.ini');
Reset (b);
b1.Pname :=(Components[i1] as TImage).Name;
b1.Pleft :=(Components[i1] as TImage).Left;
b1.Ptop :=(Components[i1] as TImage).top;
b1.Pwidth :=(Components[i1] as TImage).width;
b1.Pheight :=(Components[i1] as TImage).Height;
write (b, b1);
CloseFile (b);
end;
end;
end;
Здесь пробую открыть из «пустого» ini файла. Программа почему то меняет размер главной формы.
P.S. размер новой формы никак не связан с Image’s
procedure TForm1.btn3Click(Sender: TObject);
begin
AssignFile(b, '1.ini');
for i1:=0 to 2 do begin
TImage.Create(Self);
with TImage(Self) do
begin
Reset(b);
read (b, b1);
Parent:=Form1;
left:= b1.Pleft;
top:= b1.Ptop;
width:= b1.Pwidth;
Height:= b1.Pheight;
CloseFile(b);
{ Picture.LoadFromFile('AL.JPG'); }
end;
end;
end;
Ntlegend
попробуй так:
//в раздел uses дописать ExtCtrls;
var
img:TImage;
procedure TForm1.Button1Click(Sender: TObject);
var l:Tstrings;
begin
l:=TStringList.Create;
//проверка на существование файла
if FileExists('Config.th')
then l.LoadFromFile('Config.th');
//создание "рисунка"
img:=TImage.Create(Self);
img.Parent:=self;
if l.Text=''
then begin
l.Free;
exit;
end;
//установка параметров
img.Left := StrToInt(l.Strings[0]);
img.Top := StrToInt(l.Strings[1]);
img.Width := StrToInt(l.Strings[2]);
img.Height:= StrToInt(l.Strings[3]);
end;
procedure TForm1.Button2Click(Sender: TObject);
var l:Tstrings;
begin
//сохранение параметров в файл
l:=TStringList.Create;
l.Add(IntToStr(img.Left));
l.Add(IntToStr(img.Top));
l.Add(IntToStr(img.Width));
l.Add(IntToStr(img.Height));
l.SaveToFile('Config.th');
l.Free;
end;
тема на форме от 2009 года
Случайные статьи
Купить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)