Вывод результата в окно Tk

Shikar

Новичок
Пользователь
Дек 14, 2021
14
0
1
Добрый день!
Не откажите, начинающему, в решении вопроса. Вопрос заключается в следующем: как вывести необходимую информацию в окошко Tk, а не в текстовый документ?
Python:
from tkinter import *
from netmiko import ConnectHandler
from netmiko import Netmiko
import sys
import time
import select
import paramiko
import re
 
 
 
 
def sh_ver():
    fd = open(r'D:\cisco.txt', 'w')
    old_stdout = sys.stdout   
    sys.stdout = fd
    my_device = {'host':'10.10.10.10',
                 'username':'cisco',
                 'password':'cisco',
                 'device_type':'cisco_ios',
                 'global_delay_factor':3}
 
    net_conn = Netmiko(**my_device)
    sh_ver = net_conn.send_command('show ver')
    print(sh_ver)
    fd.close()
    
root = Tk()
root.title("Управление Cisco")
root.geometry('350x200')
 
btn = Button(root,
              text="Cisco",
              bg="yellow",
              fg="black",
              command=sh_ver,
              width=20,
              height=2)
btn.grid(column=0, row=0)
 
 
root.mainloop()
 

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 650
472
83
Все заработало, спасибо.
А как можно сюда scrollbar прикрутить и чтобы в новом окне открывалось??
можно так
Python:
from tkinter import *
from netmiko import ConnectHandler
from netmiko import Netmiko
import sys
import time
import select
import paramiko
import re


def sh_ver():
    my_device = {'host': '10.10.10.10',
                 'username': 'cisco',
                 'password': 'cisco',
                 'device_type': 'cisco_ios',
                 'global_delay_factor': 3}

    net_conn = Netmiko(**my_device)
    sh_ver = net_conn.send_command('show ver')

    tl = Toplevel()
    tl.rowconfigure(0, weight=1)
    tl.columnconfigure(0, weight=1)
    scroll = Scrollbar(tl, orient=VERTICAL)
    txt = Text(tl, width=20, height=20)
    txt.config(yscrollcommand=scroll.set)
    scroll.config(command=txt.yview)
    txt.insert(1.0, sh_ver)
    txt.grid(column=0, row=0)
    scroll.grid(column=1, row=0, sticky="ns")


root = Tk()
root.title("Управление Cisco")
root.geometry('350x200')

btn = Button(root,
             text="Cisco",
             bg="yellow",
             fg="black",
             command=sh_ver,
             width=20,
             height=2)
btn.grid(column=0, row=0)

root.mainloop()
 
  • Мне нравится
Реакции: Shikar

regnor

Модератор
Команда форума
Модератор
Июл 7, 2020
2 650
472
83
можно так
Python:
from tkinter import *
from netmiko import ConnectHandler
from netmiko import Netmiko
import sys
import time
import select
import paramiko
import re


def sh_ver():
    my_device = {'host': '10.10.10.10',
                 'username': 'cisco',
                 'password': 'cisco',
                 'device_type': 'cisco_ios',
                 'global_delay_factor': 3}

    net_conn = Netmiko(**my_device)
    sh_ver = net_conn.send_command('show ver')
    lbl.config(text=sh_ver)


root = Tk()
root.title("Управление Cisco")
root.geometry('350x200')

lbl = Label(root)

btn = Button(root,
             text="Cisco",
             bg="yellow",
             fg="black",
             command=sh_ver,
             width=20,
             height=2)
btn.grid(column=0, row=0)
lbl.grid(column=0, row=1)

root.mainloop()

убрал работу с файлом
 
Последнее редактирование:
  • Мне нравится
Реакции: Shikar

Shikar

Новичок
Пользователь
Дек 14, 2021
14
0
1
Спасибо. Завтра попробую. А файл, да, планировал убрать.
 

Shikar

Новичок
Пользователь
Дек 14, 2021
14
0
1
Все заработало, спасибо.
А как можно сюда scrollbar прикрутить и чтобы в новом окне открывалось??
 

Форум IT Специалистов