Ubuntu Rapidamente: Como faço para definir um botão para iniciar um aplicativo específico do Ubuntu

0

Sou muito novo no Linux e não sei muito. Eu estava criando meu próprio aplicativo com Quickly, e eu queria ter um botão que lança o aplicativo de informações de hardware "Hardinfo". Eu sou muito novo e eu literalmente não sei de nada, qualquer ajuda seria muito apreciada. Obrigado antecipadamente!

Update: Eu não estou procurando por um atalho de teclado, por botão eu quis dizer um botão gtk dentro da clareira. Como configurá-lo para que quando clicado me leve ao aplicativo "hardinfo". Se isso não for possível, então como posso definir o botão para emular um atalho de teclado, uma vez clicado, dentro do glade, Thankssssss!

Atualização 2: O que eu estou procurando é um processo passo a passo de como fazer isso de alguém que conhece a clareira e rapidamente completamente, porque não tenho ideia de como os códigos funcionam e onde devo colocá-los : /

    
por user276752 01.05.2014 / 17:57

3 respostas

0

OK, que tal um exemplo claro e conciso (de trabalho):

  1. quickly create ubuntu-application test
  2. cd test
  3. quickly design
  4. Adicione um botão em algum lugar com o Glade (por padrão, ele é chamado de "button1")
  5. Salve e feche o Glade
  6. quickly edit e vá para TestWindow.py
  7. Adicione o seguinte na parte superior do arquivo:

    from multiprocessing import Process
    import subprocess
    
  8. Adicione o seguinte ao final do arquivo e verifique se ele está indentado corretamente (pro tip: selecione o bloco de texto no Gedit e pressione a tecla para recuar o bloco inteiro):

    def on_button1_clicked(self, widget, data=None):
        p = Process(target=self.launch_hardinfo)
        p.start()
    
    def launch_hardinfo(self):
        subprocess.call(["hardinfo"])
    

    Essas duas funções funcionam juntas. Process.start () chama TestWindow.launch_hardinfo (que é o parâmetro target = para o construtor Process) em um novo thread para que subprocess.call () não bloqueie o aplicativo.

  9. Salve o TestWindow.py

  10. quickly run ee clique no botão.

Eu tive um pequeno problema porque estava tentando atribuir sinais no Glade, mas você nem precisa fazer isso. A biblioteca Quickly, na verdade, permite que você faça coisas como on_button1_click (), o que significa "quando o controle chamado button1 é clicado". Simples assim! Espero que isso comece você.

Veja também: Criando o aplicativo do Ubuntu com rapidez

    
por Chuck R 01.05.2014 / 19:02
0

Tive que inicializar o Ubuntu em uma VM para este, não uso o Unity;)

Você pode configurar atalhos de teclado personalizados abrindo o iniciador (botão superior esquerdo) e indo para "Teclado". De lá, você pode ir para a guia "Atalhos" e criar um atalho personalizado. Nomeie o que você quiser, mas faça o comando "hardinfo" (sem aspas). Depois de concluir, clique no lado direito da linha que acabou de ser adicionada para definir o pressionamento de teclas.

    
por Chuck R 01.05.2014 / 18:20
0

Você quer algo assim. Eu não posso fazer isso em Python, apenas em Perl, mas será semelhante em Python.

sub startapp {
    system "/usr/bin/name_of_application &";
}

$button = Gtk2::Button->new("Start application");
$button->signal_connect(clicked => \&startapp, $window);
$button->show;
    
por Jos 01.05.2014 / 18:54