![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Добрые вечер, подскажите пожалуйста, как нужно преобразовать код, чтобы при нажатии на кнопку или комбобокс форма появлялась под ними
Код:
procedure Tf_ABP.sbt_DeleteClick(Sender: TObject);
var
pt: TPoint;
begin
with Sender as TJvSpeedButton do
begin
pt := Classes.Point(Left, Top + Height);;
pt := Parent.ClientToScreen(pt);
end;
PopupMenu2.Popup(pt.X, pt.Y);
end; |
|
#2
|
||||
|
||||
|
Цитата:
|
|
#3
|
|||
|
|||
|
Код:
procedure Tf_ABP.sbt_DeleteClick(Sender: TObject);
var
t: TPoint;
begin
with Sender as TJvSpeedButton do
begin pt := Classes.Point(Left, Top + Height);
pt := Parent.ClientToScreen(pt);
end;
forma1.top := pt.Y;
forma1.left := pt.X;
forma1.show;
end; |
|
#4
|
||||
|
||||
|
Цитата:
|
|
#5
|
|||
|
|||
|
работает,но форма появляется не под кнопкой, а правее и ниже нее.
|
|
#6
|
||||
|
||||
|
Цитата:
Код:
var pt: TPoint; bt: TJvSpeedButton; begin bt := Sender as TJvSpeedButton; pt := bt.Parent.ClientToScreen(Point(bt.Left, bt.Top + bt.Height)); forma1.Top := pt.Y; forma1.Left := pt.X; forma1.Show; end; |
|
#7
|
|||
|
|||
|
Нет, тоже самое появляется, но с большими отклонениями вниз и вправо.
|
|
#8
|
||||
|
||||
|
Цитата:
Распакуй и запусти пример во вложении, и понажимай там кнопки. |
|
#9
|
|||
|
|||
|
Блин,
я просто забыл выставить свойство стартового положения вызываемой формы. а к компонентами на форме такой номер пройдет?например с грид или с комбобокс. |
|
#10
|
||||
|
||||
|
Цитата:
![]() |
|
#11
|
|||
|
|||
|
poli-smen, подскажите пожалуйта, как
![]() |
|
#12
|
||||
|
||||
|
Цитата:
Код:
var bt: TJvSpeedButton; begin bt := Sender as TJvSpeedButton; Grid1.Top := bt.Top + bt.Height; Grid1.Left := bt.Left; end; |
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
DOR (19.11.2012)
| ||
|
#13
|
|||
|
|||
|
Цитата:
оно самое. спасибо. |