powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проверить наложение одного компонента на другой
22 сообщений из 22, страница 1 из 1
Проверить наложение одного компонента на другой
    #39680258
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Суть такая: есть 2 кнопки, при нажатии на первую, она перемещается по окну на случайные (random) координаты, надо сделать так, чтоб она не могла переместиться на вторую кнопку (например, если попадает на неё, то координаты тут же изменяются на случайные, но желательно, чтоб вообще не попадала на неё)
Очень надо
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680266
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что не получается?
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680267
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не получается сделать так, чтоб кнопка меняла координаты снова, если попадает на другую кнопку
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680268
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
код давай
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680270
Aleksandr Sharahov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fermpНе получается сделать так, чтоб кнопка меняла координаты снова, если попадает на другую кнопку

Не получается изменить координаты или проверит попадание? )
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680271
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверить попадание
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680274
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Tactical Nuclear Penguinкод давай
procedure TForm1.Button1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
begin
Button1.Top := Random(Form1.ClientHeight - Button1.Height);
Button1.Left := Random(Form1.ClientWidth - Button1.Width);
if попала на кнопку 2 then
begin
Button1.Top := Random(Form1.ClientHeight - Button1.Height);
Button1.Left := Random(Form1.ClientWidth - Button1.Width);
end;
end;
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680275
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
fermpПроверить попадание

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
function IsCrossRects(aRectObject1, aRectObject2 : TRect) : Boolean ;
var
  Temp: TRect;
begin
     Result := False;
     if not UnionRect(Temp, aRectObject1, aRectObject2) then Exit;

     if (Temp.Right - Temp.Left <= aRectObject1.Right - aRectObject1.Left + aRectObject2.Right - aRectObject2.Left)
        and (Temp.Bottom - Temp.Top <= aRectObject1.Bottom - aRectObject1.Top + aRectObject2.Bottom - aRectObject2.Top)
      then Result := True;
end;
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680277
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

А в лазарусе так же можно сделать?
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680278
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
fermpdefecator,

А в лазарусе так же можно сделать?
ну скомпилируй код в лазаре, какие проблемы
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680279
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С некоторых пор (как рекорды стали объектами?), в trect встроены нужные методы:

Empty, Normalize, Union, Intersect, etc.
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680282
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем :)
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680284
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
wadmanС некоторых пор (как рекорды стали объектами?), в trect встроены нужные методы:

Empty, Normalize, Union, Intersect, etc.

и чо, и в лазаре тоже ?
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680287
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorwadmanС некоторых пор (как рекорды стали объектами?), в trect встроены нужные методы:

Empty, Normalize, Union, Intersect, etc.

и чо, и в лазаре тоже ?
И там.
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680335
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ребят, а если у меня есть прямоугольник, как мне узнать координаты каждого его угла или помещена ли кнопка в этот прямоугольник?)
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680341
Фотография Dimonka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fermpРебят, а если у меня есть прямоугольник, как мне узнать координаты каждого его угла или помещена ли кнопка в этот прямоугольник?) IntersectRect()
http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Types.IntersectRect
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680344
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так можно проверить не прикоснулась ли кнопка к краям прямоугольника, а мне надо проверить лежит ли она прям на нём, вот прям в серединке, внутри, но не обязательно в точке центра
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680345
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DimonkafermpРебят, а если у меня есть прямоугольник, как мне узнать координаты каждого его угла или помещена ли кнопка в этот прямоугольник?) IntersectRect()
http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Types.IntersectRect
Далеко послал... http://docwiki.embarcadero.com/Libraries/Tokyo/en/System.Types.TRect
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680346
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так можно проверить не прикоснулась ли к стенки прямоугольника кнопка,
а мне надо проверить находится ли кнопка внутри прямоугольника, именно в нём, а не просто прикасается
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680350
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fermpТак можно проверить не прикоснулась ли к стенки прямоугольника кнопка,
а мне надо проверить находится ли кнопка внутри прямоугольника, именно в нём, а не просто прикасается
С английским проблемы? Contains
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680352
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А можно код как это сделать?
...
Рейтинг: 0 / 0
Проверить наложение одного компонента на другой
    #39680376
Фотография fermp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разобрался...
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Проверить наложение одного компонента на другой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]