《树莓派Python编程入门与实战(第2版)》——2.4 LXDE图形界面

简介: 本节书摘来自异步社区《树莓派Python编程入门与实战(第2版)》一书中的第2章,第2.4节,作者[美] Richard Blum Christine Bresnahan,陈晓明 马立新 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

本节书摘来自异步社区《树莓派Python编程入门与实战(第2版)》一书中的第2章,第2.4节,作者[美] Richard Blum Christine Bresnahan,陈晓明 马立新 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

2.4 LXDE图形界面

在LXDE图形界面中,可以看到以下两个部分。

桌面区;

LXPanel区。

桌面区使你能够为常用的程序和文件创建快捷图标,从而更容易访问它们。只需要双击图标,就可以启动程序或打开文件。默认情况下,桌面上只会出现一个快捷图标,就是垃圾箱图标。可以在桌面的任何地方单击鼠标右键,以创建一个新的文件夹或文件图标。

LXPanel是桌面顶部的包含了几个图标的一个工具栏区域。它使得你能够将一些较小的程序(叫作applet)放置到桌面界面上。有很多的applet可以用来直接在LXPanel上提供基本的信息,以供你查看;其中的一些applet,允许单击鼠标按钮可以快速启动程序。下面的小节将会更加深入地介绍LXPanel是如何工作的。

NOTE 技巧:我想直接使用图形界面

因为可以通过LXTerminal程序使用命令行,因此你也许想让树莓派直接启动进入图形界面。这可以通过下面的步骤设置。

1.在命令行提示符输入sudoraspi-config并且按回车键。

2.在文字菜单上,按下箭头按钮直到到达Enable boot toDesktop/Scratch菜单项然后按回车键。

3.当你看到一个Choose Boot Option窗口,其中带有不同的启动选项,选择Desktop选项,然后按下Tab直到到达选项,然后按下回车键。

4.在配置菜单上,一直按Tab直到选中选项,然后按回车键。

5.当你看到一个新窗口显示Would you like to reboot now?(现在重启吗?),按Tab选择,然后按回车键。树莓派重启完成后就直接进入LXDE GUI界面了,不需要输入用户名和密码。

如果你改变了注意,想在树莓派启动之后进入命令行,你可以运行LXTerminal程序并键入sudo raspi-config来改变启动行为配置选项。

LXPanel

默认情况下,树莓派的LXPanel包含了10个applet,如表2.2所示。


90dd9d302ef1b5c970c324f488d222a013e6e92f

LXPanel上最左边的第一个图标是LXDE Programs Menu图标(上面带有一个树莓派图案的按钮)。

当你单击这个LXDE程序菜单图标时,你可以看到几个菜单类别和选项(参见表2.3)。


74c0c7210c6cc04572249e35dfd8e7c6937b8835

下一个LXPanel图标是Web浏览器。它提供了Web浏览功能,以便你可以从树莓派的桌面来浏览大多数的Web站点。

然后是PCManFM文件管理器图标。如图2.2所示,文件管理窗口跟微软Windows资源管理器类似,它允许你使用图形化的方式浏览文件和文件夹。


847dff26f101d17e584a3eb4eea3fc4b846294e7

接下来是LXTerminal图标。LXTerminal程序提供了到命令行界面的一个入口。可以单击LXTerminal图标以启动程序。在打开了窗口之后,可以输入和命令行提示窗口完全相同的命令。例如,图2.3展示了在LXTerminal输入whoami命令之后的结果。可以看到,允许你停留在GUI中并且还可以输入命令行命令。


c7dcaa430e515f517a4b6e4c94f9bca175cc6c80

在LXPanel最右侧,是显示系统信息的4个applet。首先是Network Manager applet,它显示树莓派是否连入了网络。接下来是Volume Manager图标,它显示扬声器是否关闭,并且允许你调整音量。

然后是CPU Utilization applet。它可以显示系统的当前效能,在后台可以显示为一个数字或者一个图表。通过图表,很容易看到CPU使用的最近的历史信息,并且能够抓住趋势。如果GUI中的一个窗口打开很缓慢,不妨看看这个applet。你可能会看到树莓派真的很忙。

最后,Digital Clock图标显示了树莓派所识别的当前时间。如果将鼠标悬停于其上,将会显示当前日期。可以单击Digital Clock图标以查看当前的日历。再次单击它,则会隐藏当前的日历。

实践练习

探索LXDE图形界面

现在你已经知道了LXDE图形界面上的各种图标和LXPanel面板上的各种特性,是时候自己动手探索一下树莓派的GUI了。在下面的步骤中,你将有机会同时在命令行和LXDE图形界面中尝试一些东西,例如修复一些潜在的问题或恼人的事情。

1.将树莓派连接上网络,如果你还没有这么做的话。

CAUTION 警告:有线和Wi-Fi

在下面的步骤中你会更新你的Raspbian Linux发行版的软件。做这件事情的时候,最好能使用有线网络。使用Wi-Fi连接会比较麻烦,而且由于软件缺陷可能会导致你需要做很多不必要的工作。最安全的方法是就是先连接到有线网络,更新软件,然后再尝试连接到Wi-Fi。

2.启动树莓派。

3.在raspberrypi login:提示符下,输入pi按回车键;然后应该能看到Password:提示符。

4.在Password:提示符下,输入raspberry或者输入在上一个“实践练习”部分创建的密码,然后按回车键,应该可以看到pi@raspberry~$提示符。

CAUTION 警告:你修改密码了吗?

在本章前面的部分中,你可能已经把密码从raspberry改成其他的了。如果沿着上述步骤操作的话,一定要在步骤4中输入该密码。

5.在pi@raspberrypi~$提示符下,输入startx然后按回车键,启动Raspbian的LXDE图形界面。

6.LXDE图形界面启动后,单击LXTerminal图标,打开命令行界面。应该可以看到熟悉的pi@raspberry~$提示符。

7.用鼠标单击选中LXTerminal窗口。输入whoami并且按回车键。应该可以看到回应和另一个命令行提示符,就跟你在命令行中输入该命令所看到的一样。

8.为了把Raspbian Linux发行版的软件更新到最新,你可以在同一个LXTerminal窗口输入sudo apt-get dist-upgrade并且按下回车。应该可以看到若干软件更新的消息和一个问题Do you want to continue [Y/n]?

9.输入Y并且按回车键。如果软件已经是最新版了,则会得到这样一条信息“0 upgrade, 0 newly installed…”;但是,如果软件已经严重过时,更新会花几分钟时间;软件更新会一直持续下去,直到所有软件都更新完成。

CAUTION 警告:获取软件包的问题

如果软件更新很快就结束了,并且得到这样一条信息E: Unable to fetch some archives...,则有可能是树莓派没有连接到网络或者无法连接到互联网。你必须要确保树莓派能访问网络,以保证软件更新能正常进行。

10.现在你的系统已经是最新的了,下面来给树莓派添加一个额外的包。你需要安装一个屏幕保护程序包来保证LXPanel上的ScreenLock正常工作。在LXTerminal窗口输入sudo apt-get install xscreensaver然后按回车键。

11.应该能看到一些软件更新的消息和一个问题Do you want to continue [Y/n]? 输入Y并且按回车键。当提示符再次出现时,屏幕保护程序就安装好了。

12.现在让LXTerminal窗口开着,单击LXPanel最左侧的LXDE程序菜单图标来打开菜单。

13.鼠标悬浮在LXDE菜单的Preferences项上,以打开子菜单,然后单击Screensaver,最后Screensaver的配置窗口会出现,如图2.4所示。


16f418c5d4120f9c6db6d1568405c439c33b94fa

TIP 提示:响应缓慢的窗口

如果窗口在GUI中打开比较慢也不要感到惊讶。树莓派正在全力工作让它们能迅速打开。如果一个窗口看起来很慢,可以看看LXPanel面板右侧的CPU监视器,看你树莓派是否处于较重的负载。

14.如果看到一个窗口显示The XScreenSaver daemon doesn’t seem to be running on display “o:” Launch it now?(XScreenSaver后台进程似乎没有运行在显示器“o:”上,现在启动它?),单击窗口上的OK按钮。

15.在Screensaver配置窗口上,确认选中了Display Modes标签,如图2.4所示。

16.单击Mode下拉菜单并且选择Only One Screen Saver。

17.然后还是在Screensaver配置窗口上,在Mode部分下面的列表中,滚动不同的屏幕保护程序窗口直到找到Fiberlamp并且选择它。

18.现在单击配置窗口上的Preview按钮,等几秒后,你应该可以看到屏幕保护程序。

19.单击屏幕保护程序的任意位置返回LXDE图形界面。

20.现在单击Screensaver配置窗口右上角的白色叉号关闭这个窗口,这可能需要几秒时间。

21.你可以单击LXPanel上的ScreenLock图标来测试屏幕锁定。几秒后,屏幕保护程序应该会出现。

22.单击屏幕保护程序窗口的任意位置,这次不会退回到LXDE图形界面,而是会有一个新窗口弹出,显示Please enter your password。

23.输入密码并且按回车键。

CAUTION 警告:你修改密码了吗?

在本章的开始,你可能已经把你的密码从raspberry改成其他密码了。如果沿着本章开始时的实践练习步骤操作的话,那么已经把密码从raspberry改成其他密码了!确保你在第23步中输入该密码。

24.当LXDE图形界面再出现时,选择LXTerminal。

25.在LXTerminal窗口,输入exit并且回车来关闭这个窗口。

现在你应该已经学会如何将LXDE的图形界面调整成自己喜欢的类型了。

相关文章
|
13天前
|
安全 Java 数据处理
Python网络编程基础(Socket编程)多线程/多进程服务器编程
【4月更文挑战第11天】在网络编程中,随着客户端数量的增加,服务器的处理能力成为了一个重要的考量因素。为了处理多个客户端的并发请求,我们通常需要采用多线程或多进程的方式。在本章中,我们将探讨多线程/多进程服务器编程的概念,并通过一个多线程服务器的示例来演示其实现。
|
13天前
|
程序员 开发者 Python
Python网络编程基础(Socket编程) 错误处理和异常处理的最佳实践
【4月更文挑战第11天】在网络编程中,错误处理和异常管理不仅是为了程序的健壮性,也是为了提供清晰的用户反馈以及优雅的故障恢复。在前面的章节中,我们讨论了如何使用`try-except`语句来处理网络错误。现在,我们将深入探讨错误处理和异常处理的最佳实践。
|
3天前
|
API 数据库 数据安全/隐私保护
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】Django REST framework (DRF) 是用于构建Web API的强力工具,尤其适合Django应用。本文深入讨论DRF面试常见问题,包括视图、序列化、路由、权限控制、分页过滤排序及错误处理。同时,强调了易错点如序列化器验证、权限认证配置、API版本管理、性能优化和响应格式统一,并提供实战代码示例。了解这些知识点有助于在Python面试中展现优秀的Web服务开发能力。
20 1
|
3天前
|
SQL 中间件 API
Flask框架在Python面试中的应用与实战
【4月更文挑战第18天】**Flask是Python的轻量级Web框架,以其简洁API和强大扩展性受欢迎。本文深入探讨了面试中关于Flask的常见问题,包括路由、Jinja2模板、数据库操作、中间件和错误处理。同时,提到了易错点,如路由冲突、模板安全、SQL注入,以及请求上下文管理。通过实例代码展示了如何创建和管理数据库、使用表单以及处理请求。掌握这些知识将有助于在面试中展现Flask技能。**
11 1
Flask框架在Python面试中的应用与实战
|
4天前
|
SQL 关系型数据库 MySQL
Python与MySQL数据库交互:面试实战
【4月更文挑战第16天】本文介绍了Python与MySQL交互的面试重点,包括使用`mysql-connector-python`或`pymysql`连接数据库、执行SQL查询、异常处理、防止SQL注入、事务管理和ORM框架。易错点包括忘记关闭连接、忽视异常处理、硬编码SQL、忽略事务及过度依赖低效查询。通过理解这些问题和提供策略,可提升面试表现。
25 6
|
6天前
|
机器学习/深度学习 数据可视化 数据挖掘
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
《Python 简易速速上手小册》第9章:数据科学和机器学习入门(2024 最新版)
18 1
|
6天前
|
安全 数据处理 开发者
《Python 简易速速上手小册》第7章:高级 Python 编程(2024 最新版)
《Python 简易速速上手小册》第7章:高级 Python 编程(2024 最新版)
19 1
|
6天前
|
人工智能 数据挖掘 程序员
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
《Python 简易速速上手小册》第1章:Python 编程入门(2024 最新版)
35 0
|
6天前
|
API Python
Python模块化编程:面试题深度解析
【4月更文挑战第14天】了解Python模块化编程对于构建大型项目至关重要,它涉及代码组织、复用和维护。本文深入探讨了模块、包、导入机制、命名空间和作用域等基础概念,并列举了面试中常见的模块导入混乱、不适当星号导入等问题,强调了避免循环依赖、合理使用`__init__.py`以及理解模块作用域的重要性。掌握这些知识将有助于在面试中自信应对模块化编程的相关挑战。
20 0
|
7天前
|
机器学习/深度学习 数据采集 算法
scikit-learn入门指南:从基础到实践
【4月更文挑战第17天】这篇指南介绍了scikit-learn,一个Python数据分析和机器学习的重要库。内容涵盖安装、数据加载与预处理、模型训练(如KNN分类器)、评估、调参优化及高级应用,如降维和聚类。通过实例展示了scikit-learn在分类任务中的使用,强调其在数据科学中的重要性。要深入了解,可参考官方文档和实践案例。