• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Глобальные координаты координаты клиентской области контрола

  • Автор темы Jack270
  • Дата начала
Статус
Закрыто для дальнейших ответов.
J

Jack270

Доброго времени суток!

Мне нужно какимто образом узнать глобальные координаты координаты клиентской области контрола.
Точнее нужно узнать координаты мыши относительно клиентской области заданного контрола.

Заранее спасибо ;)
 
E

etc

Когда вам надо "узнать координаты мыши относительно клиентской области заданного контрола"?
 
J

Jack270

ем... Просто у меня есть свойство MyMouse.X, которое должно возвращять не глобальную позицию мыши, а её позицыю относительно контрола, переданного в конструкторе класса MyMouse.
 
E

etc

Jack270 .... зайдем с другой стороны ... глобальные мыши знаете, контрола тоже, в чем проблемма? далее арифметические действия.
 
J

Jack270

Проблема в том, что если контрол - окно, то мне нужно узнать координаты не относительно края окна, а относительно края его клиентской области. Вот потому мне и нужно узнать координаты клиентской области.
 
E

etc

У контролов есть размеры общие и размеры клиентской части, опять не понятно в чем затруднения у вас ... ширина_общая - ширина_клиентская - дает "сдвиг", что еще не хватает?
 
J

Jack270

Но у окана ведь этот "сдвиг" есть и вверху и внизу. А получится их сумма ;)
 
E

etc

Где и главное с какого перепуга "получится их сумма"?

Вы возмите чистый листик и карандаш, нарисуйте на листике карандашом ваше окно и расставте, хотябы примерные, координаты всех инетерсующихпозиций.
Далее все темже карандашем, на том же листике, распишите как должны происходить расчеты, и поймете что все у вас уже есть, за исключением соотв. кода.
И вот самое время перекинуть все эти изыскания в код.

Jack270 Упс, я понял про сумму, на 2 разделить надо разницу чтоб получить тот самый "сдвиг".
Ну "прощелкал" я ;), так додуматься ж можно ... всеж люди.
 
J

Jack270

...
Вот окно:
3c41e97dd209.jpg

Думаю ты понял... Вот как мне найти это 30 или 5?(учитывая то, что при изменении стиля оформления эти величины меняются ;) )
 
E

etc

И что? за вас решить эту задачу для 3-класса? Или лень в справку заглянуть и просите других это сделать? а между тем там тоже все про это рассписанно, и где и какие бордеры и где и какие заголовки. Я за вас это делать не буду, или только за вознагрождение ;)
Яж вам предлагал, на листике надо, на листике.

А еще окно может иметь скролбары, тоже в клиентскую не попадают, вот где засада, все ... координаты невозможно посчитать ... все пропало. :)

PS: подсыплю ... и меню туда не входит ...
 
J

Jack270

... Ну даже если предположить, что окно чистое, то я всёровно не нашел нужной инфы ;)
Свойство ClientRectangle, класса Control возвращяет только размер, а в Top и Left нули :)
 
E

etc

Да вы так не расстраивайтесь, в этом мире все проходит, пройдет и это ;)
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!