Fórum Acionar Popup menu #327096
09/08/2006
0
eu quero fazer um esquema igual ao botão iniciar do windows... onde o usuário clica no botão e sobre um menu com as opções... até conseguir criar o menu e fazer ele aparece porém ah um errinho....
eu uso o seguinte código para acionar o popup
procedure TFPcrCms.btF4Click(Sender: TObject); var P1 : TPoint; begin P1.X := 0; P1.Y := 0; P1 := btF4.ClientToScreen(P1); PopInfo.PopUp(P1.X, P1.Y); end;
até ai blz..ele aciona o popup ... mais dependendo a posição que está o botão... ao inves do menu sair em cima do botão... como o botão iniciar.. ele sai embaixo....
pelos teste q fiz aqui.. isso ocorre quando tem espaço suficiente na tela para abrir o menu abaixo do botão..... se não tiver espaço... ele abre na parte de cima do botão...
mais como jah disse....quero q fique igual ao botão iniciar do windows. .. então presciso q o menu seja exibido na parte do cima do botão...
alguem tem alguma idéia...
estou no aguardo..
obrigado..
Thiago Coleti
Curtir tópico
+ 0Posts
10/08/2006
Night_man
o Height Dele voce descobre com o numeros de items * ´o tamanho da fonte´, assim como o width, que o maior texto * ´o tamanho da fonte´
com base nisso voce pode calcular a posicao certa para popar o item
Gostei + 0
10/08/2006
Thiago Coleti
consegui descobrir os valores aki e funcionou....... ia meio no chutodromo mais funcionou e ficou
procedure TFPcrCms.btF4Click(Sender: TObject); var P1, P2 : TPoint; begin P1.X := 0; P1.Y := "(valor do height do popup)"; P2 := btF4.ClientToScreen(P1); PopInfo.PopUp(P2.X, P2.Y); end;
valew pela ajuda...
obrigado
Gostei + 0
11/08/2006
Night_man
mas pra descobrir o tamanho do height eu fiz
Items.Count * 13 + 5 (13 era a altura da fonte e 5 um numero magico, eh um espaco de folga)
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)