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

Не получается изменить координаты или проверит попадание? )
...
Рейтинг: 0 / 0
27.07.2018, 15:56
    #39680271
fermp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверить наложение одного компонента на другой
Проверить попадание
...
Рейтинг: 0 / 0
27.07.2018, 15:58
    #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
27.07.2018, 15:59
    #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
27.07.2018, 16:00
    #39680277
fermp
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверить наложение одного компонента на другой
defecator,

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

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

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

Empty, Normalize, Union, Intersect, etc.

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

Empty, Normalize, Union, Intersect, etc.

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


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