# ============================================================
# ЧАСТЬ 5: ФРЕЙМ ДЛЯ ОБЪЕДИНЕНИЯ СТРОК (ИСПРАВЛЕНО - 2 ПОЛЯ)
# ============================================================
frame_concat = tk.LabelFrame(root, text="Объединение строк", padx=5, pady=5)
frame_concat.pack(pady=10, fill='both', expand=True)
# Метка и поле 1
tk.Label(frame_concat, text="Поле 1:").pack(side='left', padx=2)
self.entry1 = tk.Entry(frame_concat, width=15)
self.entry1.pack(side='left', padx=5)
# Метка и поле 2 (ВОТ ЭТО НЕ ХВАТАЛО!)
tk.Label(frame_concat, text="Поле 2:").pack(side='left', padx=2)
self.entry2 = tk.Entry(frame_concat, width=15)
self.entry2.pack(side='left', padx=5)
# Кнопки
tk.Button(frame_concat, text="Соединить", command=self.concat_text).pack(side='left', padx=5)
tk.Button(frame_concat, text="Поменять местами", command=self.swap_text).pack(side='left', padx=5)
# Результат
self.concat_result = tk.Label(frame_concat, text="", bg='white', width=25, relief='sunken')
self.concat_result.pack(side='left', padx=10)