![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
Привет программисты.
У меня есть scrollbox, на нем в рантайме создаются Image, 40 шт. Располагаются они по align = altop, друг за дружкой. Нужно найти самый первый пустой Image, но первый не по номеру, а по top. В моей программе эти Image могут быть перемешаны между собой, то бишь Image[1] может находится как сверху, так и снизу или по середине.. Что бы вы понимали, я прикреплю изображение. Стрелкой указан img который нужно определить. ![]() Можно даже без кода, просто в двух словах.. |
|
#2
|
|||
|
|||
|
Ну, если в 2х словах, то примерно так:
Перебираешь ВСЕ имаджи. Если текущий не пустой, то пропускаешь его. Если пустой, то проверяешь координаты. Если меньше, чем у уже выбранного, то запоминаешь новый. Код пишу прямо тут, так что могу что-то напутать в названиях свойств и методов: Код:
var
I : Integer;
TopImg : TImage;
begin
TopImg := Nil;
For I := 0 To ScrollBox1.ComponentCount-1 Do
If ScrollBox1.Components[i] Is TImage Then
Begin
If (ScrollBox1.Components[i] As TImage).IsEmpty Then
Begin
If TopImg = Nil
Then TopImg := ScrollBox1.Components[i] As TImage
Else
If (ScrollBox1.Components[i] As TImage).Top < TopImg.Top
Then TopImg := ScrollBox1.Components[i] As TImage
End;
End; |
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Gareth (29.03.2019)
| ||
|
#3
|
|||
|
|||
|
Цитата:
Столкнулся с проблемой, оба условия не срабатывают. Код:
if IMG[i].Picture = nil then
begin
ShowMessage('aaa');
end;
if IMG[i].Picture.Graphic = nil then
begin
ShowMessage('aaa');
end;Как еще можно проверить TImage на отсутствие пикчи в ней? ПРобовал при создании Image`a ставить nil, но безрезультатно. delphi rio win10 Последний раз редактировалось Gareth, 29.03.2019 в 09:07. |
|
#4
|
|||
|
|||
|
Я же не просто написал IsEmpty. Есть там где-то такой метод.
UPD. Посмотрел доку. Есть св-во Empty у TImage.Picture.Graphic Последний раз редактировалось lmikle, 29.03.2019 в 18:38. |
| Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
Gareth (30.03.2019)
| ||