![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
--==KliM==-- |
![]() ![]()
Сообщение
#1
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
Составить программу, получающую информацию о двух окнах (координаты верхнего левого угла, ширину и высоту.
![]() Заранее спасибо |
volvo |
![]()
Сообщение
#2
|
Гость ![]() |
--==KliM==--,
о каких окнах речь? Если о текстовых (созданных с помощью модуля CRT), то WindMin содержит координаты верхнего левого, а WindMax - координаты нижнего правого угла... НО... В каждый момент времени только одно окно может быть активным, следовательно, работать с двумя окнами сразу, используя ЭТИ переменные, нельзя... Если же речь об окнах графических (созданных с помощью процедур/функций модуля Graph), то там все зависит от реализации окон. |
--==KliM==-- |
![]()
Сообщение
#3
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
--==KliM==--, о каких окнах речь? Если о текстовых (созданных с помощью модуля CRT), то WindMin содержит координаты верхнего левого, а WindMax - координаты нижнего правого угла... НО... В каждый момент времени только одно окно может быть активным, следовательно, работать с двумя окнами сразу, используя ЭТИ переменные, нельзя... Если же речь об окнах графических (созданных с помощью процедур/функций модуля Graph), то там все зависит от реализации окон. Я в этом ничо не понимаю! ![]() |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
Вот сначала выясни, потом будешь спрашивать... А то устроили тут "принеси то, не знаю что"...
|
APAL |
![]()
Сообщение
#5
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
"получающую информацию" - видимо от пользователя задаются координаты, а в результате нужно выдать пересекаются они или нет.
Так? -------------------- |
--==KliM==-- |
![]()
Сообщение
#6
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
APAL |
![]()
Сообщение
#7
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Вот тебе функция:
Function InWin(x0,y0,xW,yH,xi,yi : byte) : Boolean; А дальше попробуй додумать как ее использовать. -------------------- |
--==KliM==-- |
![]()
Сообщение
#8
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
А полностью написать не можешь, а? Хотя и за это большое спасибо
![]() ![]() |
APAL |
![]()
Сообщение
#9
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Код Flag:=False; For i:=x1 to x1+xW1-1 do Flag:=Flag or (InWin(x2,y2,xW2,yH2,i,y1) or InWin(x2,y2,xW2,yH2,i,y1+yH1-1)); For i:=y1 to y1+xW1-1 do Flag:=Flag or (InWin(x2,y2,xW2,yH2,x1,i) or InWin(x2,y2,xW2,yH2,x1+xW1-1,i)); -------------------- |
![]() ![]() |
![]() |
Текстовая версия | 21.06.2025 18:15 |