![Перші кроки в wxpython урок №2 (wxpython) Перші кроки в wxpython урок №2](https://images-on-off.com/images/179/pervieshagivwxpythonurok2-179d8e0c.jpg)
У цій частині навчання wxPython ми постараємося створити найпростіші приклади.
простий приклад
Почати слід з самого простого прикладу. Нашим першим скриптом буде просте відображення невеликого вікна. Ми проаналізуємо кожну лінію нашого найпростішого скрипта.
Перша лінія починається з шебанга (послідовність символів «#» і «!»), Після якого слід шлях до інтерпретатора.
Наступна лінія дозволяє імпортувати базові модулі wxPython. Серед них: ядро, елементи управління, графічний інтерфейс, вікна та інше. Технічно, wx - це простір імен. Всі функції і об'єкти базових модулів починаються із префікса wx.
Наступна лінія нашого коду створює об'єкт докладання.
Кожна програма на wxPython повинна мати один об'єкт докладання.
У цій ділянці ми створюємо об'єкт wx.Frame. Віджет wx.Frame є важливим виджетом контейнера. Трохи пізніше ми розберемо цей віджет детальніше. Сам віджет wx.Frame є батьківським для інших віджетів. У нього немає батьківського віджета. Якщо ми вкажемо «none» для батьківського параметра, то побачимо, що у нашого віджета немає батьківських віджетів. Таким чином wx.Frame є найвищим віджетом в ієрархії.
Після того як ми створили віджет wx.Frame. нам необхідно скористатися методом Show (), чтби відобразити його на екрані.
Остання лінія запускає основний цикл. Він є нескінченним. Основний цикл відловлює і відправляє всі події, які відбуваються під час життя додатки.
Цей приклад був дуже простим. Але, не дивлячись на простоту, з підсумковим вікном можна зробити багато роботи. Зокрема, ми можемо змінити розмір вікна, мінімізувати його або розгорнути. Для цього функціоналу потрібно досить багато коду. Всі ці можливості приховані і доступні за замовчуванням в інструментарії wxPython. Немає необхідності заново винаходити колесо.
![Перші кроки в wxpython урок №2 (wxpython) Перші кроки в wxpython урок №2](https://images-on-off.com/images/179/pervieshagivwxpythonurok2-cff7ac66.png)
Мал. 1. Результат нашого простого коду.
Віджет wx.Frame - один з найбільш важливих в wxPython. Це віджет-контейнер. Це означає, що він може містити в інші віджети. Насправді він може містити будь-яке вікно, яке не є фреймом або діалогом. Віджет wx.Frame складається з заголовка, граней і центральній частині контейнера. Тема і межі є опціональними. Їх можна прибрати, використовуючи різні прапори.
Wx.Frame має наступний конструктор:
Конструктор має сім параметрів. У першого параметра немає значення за замовчуванням. Решта сім параметрів таке значення мають. При цьому перші три параметри - обов'язкові, а останні чотири - опціональні.
wx.DEFAULT_FRAME_STYLE являє собою набір прапорів за замовчуванням. wx.MINIMIZE_BOX | wx.MAXIMIZE_BOX | wx.RESIZE_BORDER | wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.CLIP_CHILDREN. Комбінуючи різні стилі, ми можемо змінювати стилістику віджета wx.Frame. Нижче представлений наочний приклад зміни стилів.
Нашим наміром було відображення вікна без функції згортання. Тому ми не вказали даний прапор в параметрі style.
![Перші кроки в wxpython урок №2 (перші) Перші кроки в wxpython урок №2](https://images-on-off.com/images/179/pervieshagivwxpythonurok2-b537bbba.png)
Мал. 2. Вікно без елемента згортання.
Розмір і позиція
Ми можемо самостійно вказати розмір нашого застосування двома різними способами. В першу чергу у нас є параметр розміру в конструкторі віджета. Також, ми можемо скористатися методом SetSize ().
У цьому прикладі розмір програми становитиме 250х200 пікселів.
У конструкторі ми вказали ширину віджету wx.Frame в 250 пікселів. Висоту віджета - в 200 пікселів.
Аналогічним чином ми можемо позиціонувати наш додаток на екрані. За замовчуванням вікно фіксується в лівому верхньому кутку екрану. Але, в залежності від різних операційних систем і навіть менеджерів вікон, положення може змінюватися. Деякі з менеджерів вікон самостійно вибирають позицію вікон програми.
Деякі з них виконують оптимізацію, в результаті якої вікна не перекриваються. У той же час програміст може сам позиціонувати вікно. У конструкторі віджета wx.Frame нам уже попадався параметр pos. Якщо встановлювати значення, відмінні від зазначених за замовчуванням, ми зможемо керувати позицією розміщення вікна.
![Перші кроки в wxpython урок №2 (wxpython) Перші кроки в wxpython урок №2](https://images-on-off.com/images/179/pervieshagivwxpythonurok2-6c0783bf.jpg)
Існує кілька методів, за допомогою яких можна зробити це.
Також існують ситуації, коли нам може знадобитися відображення вікна з максимальними розмірами. У цьому випадку вікно розміщується в позиції (0, 0) і займає весь екран. В даному випадку wxPython обчислює внутрішні координати екрану. Для відображення вікна wx.Frame з максимальними розмірами використовується метод Maximize ().
Центрування на екрані
Якщо ми захочемо центрировать наш додаток на екрані, у wxPython знайдеться для цього зручний метод. Використовуючи метод Centre () наше вікно буде розміщено в центрі екрану. Немає необхідності вираховувати ширину і висоту екрану для визначення позиції вікна. Потрібно лише скористатися даним методом.
У цьому прикладі ми центрованої невелике вікно на нашому екрані.
Це метод, який центрує вікно на екрані.
У цьому розділі ми вивчили найбільш прості приклади роботи wxPython.