Acho que você quer dizer usar uma tecla ou comando pra abrir?
Se for isso, aqui vai um exemplo simples:
-- client
local tecla = "n"
local comando = "vermsg"
bindKey( tecla, "down",
-- 'down': significa que a tecla está sendo pressionada
-- 'up': significa que a tecla foi liberada
function()
-- mostra a menssagem quando apertar a tecla 'n'
outputChatBox( "A tecla "..n.." foi pressionada" )
end
)
-- mostrando no chat quando digitar o comando da variável 'comando'
addCommandHandler( comando,
function ( nome_do_comando )
outputChatBox( "O comando "..nome_do_comando.." foi digitado" )
end
)
É muito fácil de usar essas funções, imagino que você conseguiu entender o código.
Agora, avançando para o comando e a bind funcionar com o painel-DX:
Talvez você já tenha entendido que:
addEventHandler ("onClientRender", getRootElement(), drawDX)
Vai manter o DX mostrando na tela, enquanto que:
removeEventHandler ("onClientRender", getRootElement(), drawDX)
Vai parar o evento, e o "DX" não será executado.
O que mais será necessário?
Bem, showCursor para mostrar o cursor do mouse, e, fora isso você provavelmente terá que manipular a variável que indica se o DX está mostrando ou não.
Achei melhor te explicar pra você entender que na verdade é uma coisa fácil, mesmo que você não entenda os conceitos básicos da programação, você podia ter se esforçado e visto um exemplo de bindKey e addCommandHandler para ao menos ter tentado incluir no código que te foi dado aqui.
Por exemplo, esse código dar alternar o DX para mostrar e ocultar quando digitar o comando:
local tecla = 'n'
bindKey( tecla, "down",
function()
if(drawingPanel == false) then
addEventHandler("onClientPreRender", getRootElement(), draw);
drawingPanel = true;
showCursor(true)
else
removeEventHandler("onClientPreRender", getRootElement(), draw);
drawingPanel = false;
showCursor(false)
end
end
)
-----
Não me entenda mal, mas não gosto de ver pessoas aqui buscando ajuda e no fim quem se esforça mais é quem vai ajudar, enquanto o dono do tópico é breve e mal consegue se expressar por comentar apenas 1 linha.
Voltando ao assunto, a função isMouseInPosition te ajudará a configurar os cliques nos botões usando puro DX. Use o evento "onClientClick" e chame a função dentro desse evento (você pode dar um addEventHandler("onClientClick"..) e removeEventHandler), aqui no fórum tem alguns tópicos relacionado a isso.