Jump to content
chrispbr

Scroll bar sempre up ou down

Recommended Posts

Fala pessoal, preciso da seguinte ajuda, tenho um programa tem uma listbox com scrollbar, gostaria que a scrollbar ficasse sempre up ou sempre down, consigo fazer isso mandando um Send("{UP}") o problema e que se a janela não estiver ativa ela não recebe o comando, tentei o controlsend mas não funcionou, lembrando que não é uma aplicação criada no autoit, se alguem puder me dar uma luz por onde posso seguir agradeço.

Share this post


Link to post
Share on other sites

Opa Beleza?

Bom se eu entendi bem o que voce quer e mostrar sempre o fim da lista, algo parecido com o chat do forum?
Se for isso mesmo você pode usar algo assim:

 _GUICtrlListView_EnsureVisible($ListView, _GUICtrlListView_GetItemCount($ListView)-1)

Share this post


Link to post
Share on other sites

 

Opa Beleza?

Bom se eu entendi bem o que voce quer e mostrar sempre o fim da lista, algo parecido com o chat do forum?

Se for isso mesmo você pode usar algo assim:

 _GUICtrlListView_EnsureVisible($ListView, _GUICtrlListView_GetItemCount($ListView)-1)

Primeiramente obrigado pela força, tentei e não rolou, fiz da seguinte forma:

#include <GuiListView.au3>

$ListView = ControlGetHandle ( "title", "text", controlID )
_GUICtrlListView_EnsureVisible($ListView, _GUICtrlListView_GetItemCount($ListView)-1)

mas a scrollbar não sai do lugar :(

Edited by chrispbr

Share this post


Link to post
Share on other sites

explicando melhor eu atendo uma clinica, e esta clinica tem um software que faz agendamento,controle de estoque, finanças essas coisas, neste software tem um chat interno, onde os medicos se comunicam entre si com a recepção e por ai vai, so que para ver a ultima mensagem vc tem que usar o scroll manualmente, ele não rola automaticamente, dai o que acontece e que se a pessoa não rolar manualmente ela não ve a ultima msg que recebeu, ele fica parado na primeira, queria fazer um script para automatizar esta rolagem do scroll, como comentei anteriormente consigo fazer com o send( up ) em loop, o problema e que a janela não estiver ativa o comando send não é enviado, e com controlsend ele nem responde ativa ou não ativa.

Share this post


Link to post
Share on other sites

Você tem alguma função para atualizar sua lista? Se tiver basta colocar os comando que lhe enviei dentro dela.

Share this post


Link to post
Share on other sites

Então, eu li ontem de madrugada, mas não sei como usar todo aquele código, sou novo no assunto.

Então.... Logo no começo do código eu coloquei um exemplo bem simples de ser entendido.... Mas vamos lá:

No código tem duas funções, uma para envio de teclas e outra para o controle do mouse...

Ambas, em seus parâmetros, usam o "handle" da janela que da janela que você quer trabalhar.

 

No próprio exemplo que eu deixei no código, mostrei uma mandeira de obter o Handle($hWnd), existem outras...

 

De uma olhada no código, a função do mouse e os parâmetros de entrada... Você nota que o primeiro parametro é o handle e os demais não são obrigatórios, mas as cordenadas do clique vc precisará definir para saber onde o mouse terá que clicar...

 

Dentro da sua pasta do autoit tem uma ferramenta muito útil, autoitinfo, au3info, alguma coisa com info no nome, não me recordo agora. Com esta ferramenta vc consegue descobrir as coordenadas...

 

Enfim, sugiro que vc tente, teste, erre, veja os exemplos do próprio help do autoit para entender como o autoit funciona... FikDik...

 

Espero ter ajudado.

 

Att,

 

Antony Gabarron

Share this post


Link to post
Share on other sites

Então.... Logo no começo do código eu coloquei um exemplo bem simples de ser entendido.... Mas vamos lá:

No código tem duas funções, uma para envio de teclas e outra para o controle do mouse...

Ambas, em seus parâmetros, usam o "handle" da janela que da janela que você quer trabalhar.

 

No próprio exemplo que eu deixei no código, mostrei uma mandeira de obter o Handle($hWnd), existem outras...

 

De uma olhada no código, a função do mouse e os parâmetros de entrada... Você nota que o primeiro parametro é o handle e os demais não são obrigatórios, mas as cordenadas do clique vc precisará definir para saber onde o mouse terá que clicar...

 

Dentro da sua pasta do autoit tem uma ferramenta muito útil, autoitinfo, au3info, alguma coisa com info no nome, não me recordo agora. Com esta ferramenta vc consegue descobrir as coordenadas...

 

Enfim, sugiro que vc tente, teste, erre, veja os exemplos do próprio help do autoit para entender como o autoit funciona... FikDik...

 

Espero ter ajudado.

 

Att,

 

Antony Gabarron

Vlw parceiro vou tentar, qualquer coisa peço um help novamente, se der certo falo aqui, abs.

Share this post


Link to post
Share on other sites

Você tem alguma função para atualizar sua lista? Se tiver basta colocar os comando que lhe enviei dentro dela.

não tenho função, a principio achei que era so enviar um comando tipo send :mad2:, não sei se estou errado mas estes comandos _Guixxxxx, não são para serem usados somente em formulários criados via autoit?

Edited by chrispbr

Share this post


Link to post
Share on other sites

Vlw parceiro vou tentar, qualquer coisa peço um help novamente, se der certo falo aqui, abs.

kkkkkkkkkkkkkkkkkk, deu certo vc é um gênio cara, agora que entendi eu não uso aquele codigo no meu codigo só faço um include, :P , vou explorar mais teclas mas o up ja resolveu pq a janela não precisa estar ativa, obrigado a todos, grande abs.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×