Ищете настраиваемый & ldquo; Знаете ли вы & hellip; & rdquo; диалоговое приложение

Я хочу развернуть приложение «Знаете ли вы ...» или «Совет дня» в офисе. Он должен:

  • Показать диалог во время входа в систему со случайной подсказкой.
  • Очевидно, предоставьте некоторый способ хранения моих собственных советов.
  • Легко отключить и включить самого пользователя.

Я использую марионетку, так что я покрыта развертыванием. Советы даже не нужно собирать с сервера, поскольку я могу развернуть новейший файл / базу данных советов без затрат.

Конечно, я мог бы взломать быстрое решение, используя zenity и bash, но я хотел бы знать, есть ли какое-либо приложение, специально предназначенное для этого.

Мне не очень нравится подход zenity, потому что он очень ограничен содержанием, которое можно отобразить. Нет текста рядом со скриншотами, например. Zenity нацелен на отображение простых диалогов.

4
задан 8 December 2012 в 20:45

2 ответа

Я закончил работу над быстрым решением с Python, используя Python-webkit. Это решение отображает файлы HTML

#!/usr/bin/env python

import gtk,webkit,os
from random import choice

win = gtk.Window()
win.connect("destroy", lambda w: gtk.main_quit())

scroller = gtk.ScrolledWindow()
win.add(scroller)

web = webkit.WebView()
scroller.add(web)

banners = ["banner1","banner2","banner3"]
banner = choice(banners)

web.load_uri("file:///usr/local/lib/tips/"+banner+".html")

win.resize(640,400)
win.show_all()
gtk.main()

Поместите соответствующие баннеры на /usr/local/lib/tips/, например, banner1.html представляет собой простое изображение:

<html><head><style>*,html,body{margin:0;padding:0;}</style></head><body></body><img src='banner1.png' /></html>

Если вы ссылаетесь на ресурсы (изображения , css, js ...), разместите их также в /usr/local/lib/tips/.

Затем запустите этот скрипт Python при запуске сеанса, создав файл рабочего стола в /etc/xdg/autostart.

0
ответ дан 8 December 2012 в 20:45

Это звучит очень похоже на графический интерфейс к fortune с пользовательской базой данных состояния.

Создание базы данных пользовательских состояний

  1. Создайте текстовый файл, содержащий все подсказки, которые вы хотите отобразить. Каждый совет должен быть на отдельной строке, и после каждого совета должна быть строка, содержащая только символ %.
  2. Запустите strfile -c % tips tips.dat, чтобы создать файл, подходящий для использования с fortune

Установка fortune и Советы

  1. Выполните sudo apt-get install fortune-mod, чтобы получить fortune программа.
  2. Теперь поместите tips и tips.dat в / usr / share / games / fortunes. Если там уже есть другие файлы, эти состояния будут отображаться с вашими советами; Вы можете удалить их.

Графический интерфейс

К сожалению, вариантов графического отображения состояний не так много. Вы можете установить xcowsay, который находится в обычных репозиториях, или установить апплет индикатора Wanda the Fish из PPA: https://launchpad.net/~dylanmccall/+archive/indicator-fish , Оба они могут быть настроены на запуск при входе пользователя в систему. Однако я считаю, что только xcowsay могут отображать изображения.

Ни одна из этих программ не выглядит особенно профессионально, поскольку у xcowsay есть говорящая корова и рыба-индикатор, мультипликационная рыба, сопровождающая каждое состояние. Если это вас беспокоит, вам, вероятно, лучше написать собственную графическую оболочку для fortune.

0
ответ дан 8 December 2012 в 20:45

Другие вопросы по тегам:

Похожие вопросы: