Pergunta

Por exemplo, suponha que eu estou editando seguinte texto (\ t é para guias, não é texto) '\ T \ t \ Tsome texto ...' e minha posição do teclado de entrada é reto diante de 'S' (não há texto selecionado) e eu quero obter o número de abas antes de 'S' (neste caso é 3)

Assim como obter esse número de guias usando Win32 API?

P.S. Talvez alguma função para obter linha atual inteira (e, em seguida, analisar esse texto)?

edit: Então, eu quero meu programa (que é executado em segundo plano e não tem uma GUI) para determinar o número de guias de linha ativa atual em qualquer editor de texto que está actualmente activa (que eu estou editando in).

Foi útil?

Solução

Para algumas aplicações como o Windows Notepad padrão, pode ser possível fazer isso a partir de outro aplicativo. -se o bloco de notas é pouco mais do que o controle grande Win32 "Editar" dentro de uma janela redimensionável, então todas as mensagens regulares de controle Win32 Editar pode ser usado para obter o texto real e a posição do cursor e assim por diante.

No entanto, no caso geral de qualquer editor de texto do Windows, não há nenhuma exigência para que os aplicativos usam um controle Win32 Editar para as suas necessidades de edição de texto (e, de fato, a fazê-lo seria apenas reinventando Notepad). Não há nenhum método Win32 API padrão para descobrir onde o acento circunflexo é apontando, porque a aplicação é livre para desenhar o texto na tela da forma que achar melhor (e irá armazenar o texto internamente dentro do aplicativo sem API correspondente para você chamada).

Outras dicas

prática de codificação Melhor Java é fazer com que seu sistema operacional de código plataforma de sistema independente, tanto quanto possível. Se você está tentando implementar um utilitário que é intrinsecamente específico do Windows (por exemplo, fortemente dependente de APIs Win32), seria melhor usar C ++ ou C # ao invés de Java.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top