Нет, на промежуточную это ну никак не тянет. См. видео:VadiMGP писал(а):Такое может происходить в двух случаях. Первый - ты щелкнул мышью и быстро отвел ее в сторону. Когда TCMenu запрашивает положение курсора то вполне вероятно, что она может получить некоторое промежуточное положение между позицией клика и конечной позицией мыши. В этом случае я ничего не могу сделать - какую позицию мне дали - с той и работаю.
http://flint-inc.ru/Temp/tc/tcmenu.exe (221 кб) (если есть недоверие к EXE-файлам, могу перевести в AVI).
Как видно, меню появляется гораздо дальше от кнопки, чем максимальное удаление курсора. И к границе экрана курсор не подходит (снятое окно Тотала находится примерно по центру экрана, разрешение моника - 1280х1024).VadiMGP писал(а):Если курсор находится близко к краю экрана, и винда считает, что меню таких размеров тут показать нельзя, то меню может появиться где угодно (хоть в ботинке, как неразменный пятак). У винды есть свои, никому неведомые соображения насчет того, где в таких случаях показывать меню. Во всяком случае, в таких ситуациях она (винда) плюет на параметры TrackPopupMenu с высокой колокольни.
По переданным параметрам, вестимо. Я считаю, что крайне маловероятно наличие двух кнопок с идентичным набором параметров, и даже более того - с идентичным BAR-файлом. Ну, а ежели всё же найдётся такой оригинал - уж звиняйте, пусть включает в программе такой же режим, как реализован сейчас (его надо оставить доступным в виде опции, естественно), с определением по координатам мыши.VadiMGP писал(а):Хорошо, прочитал я, например, default.bar и теперь знаю, что в нем три кнопки c TCMenu. Одна, допустим, крайняя слева, другая - четвертая по счету, третья - крайняя справа. Как я узнаю, по какой именно кнопке меня запустили?