0 / 0 / 0
Регистрация: 16.04.2015
Сообщений: 8

В главном окне не отображается меню

31.10.2024, 19:19. Показов 841. Ответов 2

Студворк — интернет-сервис помощи студентам
Добрый вечер. Решаю проблему уже 2 вечера и никак не могу решить. В главном окне должно располагаться меню, при выборе пункта Преподаватели нужно, чтобы вывелось второе окно с метками пока, потом добавлю все остальные элементы. Но в главном окне меню не отображается и втрое появляется сразу же с главным и в нем нет элементов. Помогите найти ошибку.
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
rom tkinter import *
import tkinter as tk
from tkinter import messagebox as mb, Tk
 
 
class UI_teacher(tk.Toplevel):
    def __init__(self,parent):
        super().__init__(parent)
        self.title("Список преподавателей")
        self.geometry("330x500+630+200")
        self.resizable(False, False)
        self.l1 = Label( text="Id")
        self.l1.grid(row=0, column=0)
        self.l2 = Label(text="Фамилия")
        self.l2.grid(row=0, column=2)
        self.l3 = Label(text="Имя")
        self.l3.grid(row=1, column=0)
        self.l4 = Label( text="Отчество")
        self.l4.grid(row=1, column=2)
        self.l4 = Label(text="Должность")
        self.l4.grid(row=2, column=0)
 
class App(tk.Tk):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
 
        mainmenu=Menu(self)
        self.config(menu=mainmenu)
 
        reference_booksmenu=Menu(mainmenu, tearoff=0)
        reference_booksmenu.add_command(label="Преподаватели",command=UI_teacher)
        reference_booksmenu.add_command(label="Студенты")
        reference_booksmenu.add_command(label="Предметы")
        reference_booksmenu.add_separator()
        reference_booksmenu.add_command(label="Выход")
 
        markmenu=Menu(mainmenu, tearoff=0)
        markmenu.add_command(label="Оценки")
        markmenu.add_cascade(label="Справочники",menu=reference_booksmenu)
        markmenu.add_cascade(label="Ведомость",menu=reference_booksmenu)
 
 
def main():
    root = Tk()
    root.title("Успеваемость студентов")
    root.geometry('300x250')
    app = App()
    root.mainloop()
 
if __name__ == '__main__':
    main()
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.10.2024, 19:19
Ответы с готовыми решениями:

Создание элемента меню в главном окне
Нужен виджет, в котором есть меню с кнопками при нажатии на которые на виджете отрисовываются виджеты с элементами программы (таблицы,...

Как сделать так, когда я ввожу информацию в окне 2, то она появлялась в главном окне тобишь в окне 1?
В общем нужно создать просто приложение по типу инсталятора с кнопками далее или назад. И я ввожу информацию в textbox допустим и она...

Связать textBox-ы в главном окне с trackBar-и и метками во втором окне
Главное окно содержит семь полей ввода с текстом «text1»–«text7» и кнопку «Show». При нажатии кнопки «Show» появляется второе (немодальное)...

2
4 / 4 / 0
Регистрация: 30.01.2023
Сообщений: 19
01.11.2024, 17:02
я чёт начал делать, но времени доделать нет. Я решил всё же скинуть то, что получилось, может наведёт на мысль:
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
from tkinter import *
import tkinter as tk
from tkinter import messagebox as mb, Tk
 
 
class UI_teacher():
    def __init__(self):
        super().__init__()
        root = Tk()
        root.title("Список преподавателей")
        root.geometry("330x500+630+200")
        root.resizable(False, False)
        root.l1 = tk.Label(text="Id")
        root.l1.grid(row=0, column=0)
        root.l2 = tk.Label(text="Фамилия")
        root.l2.grid(row=0, column=2)
        root.l3 = tk.Label(text="Имя")
        root.l3.grid(row=1, column=0)
        root.l4 = tk.Label(text="Отчество")
        root.l4.grid(row=1, column=2)
        root.l4 = tk.Label(text="Должность")
        root.l4.grid(row=2, column=0)
 
class App(Frame):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        mainmenu=Menu(self.master)
        self.master.config(menu=mainmenu)
 
        reference_booksmenu=Menu(mainmenu, tearoff=0)
        mainmenu.add_command(label="Преподаватели",command=UI_teacher)
        mainmenu.add_command(label="Студенты")
        mainmenu.add_command(label="Предметы")
        mainmenu.add_separator()
        mainmenu.add_command(label="Выход")
 
        markmenu=Menu(mainmenu, tearoff=0)
        mainmenu.add_command(label="Оценки")
        markmenu.add_cascade(label="Справочники",menu=reference_booksmenu)
        markmenu.add_cascade(label="Ведомость",menu=reference_booksmenu)
 
 
def main():
    root = Tk()
    root.title("Успеваемость студентов")
    root.geometry('300x250')
    app = App()
    root.mainloop()
 
if __name__ == '__main__':
    main()
1
0 / 0 / 0
Регистрация: 16.04.2015
Сообщений: 8
02.11.2024, 09:52  [ТС]
Спасибо, но пока не получается
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
02.11.2024, 09:52
Помогаю со студенческими работами здесь

Добавить меню к итему меню, который уже находится в главном меню
Как можно программно добавить подменю к итему меню, который находится в главном меню? Чтобы выглядело это как-то наподобие того, что на...

Компоненты в главном окне
Подскажите, как на главное окно, созданное с помощью winapi, добавить новые компоненты типа кнопок и панели со вкладками диалоговых окон? ...

Не рисуются кнопки на главном окне
Привет. мне нужна ваша помощью. у меня чего-то в VS 2010 не могу нарисовать(кнопки и т.д.)в winapi проекте вот ссылка на скрин там даже...

Не отображаются кнопки в главном окне
Сделал интерфейс главного окна и прописал одну кнопку к нему, при нажатий которой должно открыться дочернее окно(пустое). Но проблема в том...

Как сделать чтобы PhotonMono инстанцировался не в главном меню, а в меню мультиплеера?
Как сделать, чтобы PhotonMono инстанцировался не в главном меню, а в меню мультиплеера?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

Новые блоги и статьи
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru