官术网_书友最值得收藏!

How will the code be structured?

Tkinter exposes many classes. These are known as widgets. A widget is typically any part of the application that needs to be drawn onto the screen, including the main window.

A Tkinter application always needs to have a main window. This is what will be drawn on the screen for the user to see. This is crucial for any GUI application, so much so that if you do not define one, Tkinter will try to create one for you (though you should never rely on this!). The widget that performs this job is called Tk.

The Tk widget exposes various window properties, such as the text within the top bar of the application, the size of the application, its position on screen, whether it can be resized, and even the icon which appears in the top right-hand corner (on Windows only).

Because of this feature exposure, it is very common for the main class of an application to inherit from the Tk widget, though any Tkinter widget can be subclassed to add program-specific functionality.

There is no set convention for what the subclass should be called. Some like to call it Root, some choose App, and others (such as myself) prefer to name it after the program itself. For example, a shopping list program would have a class called ShoppingList that inherits from Tk. Bear this in mind when looking through other sources of information on Tkinter.

Once you have a main window defined, you can begin adding other widgets into it. All other widgets must belong to a parent which has the ability to display them, such as a Tk or Frame. Each widget is only visible if its parent is. This allows us to group widgets into different screens and show or hide groups of them as need be.

Widgets are placed into their parents using special functions called geometry managers. There are three geometry managers available in Tkinter – pack, grid, and place. Let's take a look at each of them in detail.

主站蜘蛛池模板: 衡南县| 阿坝县| 鄂伦春自治旗| 太保市| 仲巴县| 灵川县| 台湾省| 惠州市| 潢川县| 准格尔旗| 日土县| 辉南县| 山西省| 灵寿县| 聂拉木县| 鄱阳县| 德令哈市| 宜阳县| 玛纳斯县| 平江县| 景东| 晋宁县| 黄冈市| 横山县| 郧西县| 浑源县| 太湖县| 安仁县| 临高县| 内丘县| 新河县| 尚义县| 建瓯市| 通海县| 含山县| 乌兰察布市| 五家渠市| 依安县| 吉林市| 盐城市| 卢龙县|