Не могли бы вы мне помочь?
Что я пытаюсь сделать:
Я пытаюсь создать форму, в которую пользователь помещает данные, и при нажатии на кнопку она сохраняет все данные в таблицу sqlite 3
(оригинальная программа длиннее, у нее много других полей ввода, поэтому я просто создаю меньший с кодом, который выдает мне сообщение об ошибке)
проблема: когда я нажимаю на кнопку, система генерирует это сообщение об ошибке (вероятно, что-то не так с моим scrolledtext)
Исключение в обратном вызове Tkinter (последний последний вызов):
File " C: \ Users \ sheha \ AppData \ Local \ Programs \ Python \ Python37 \ lib \ tkinter__init __. Py ", строка 1705, в вызов , возврат self.fun c (* args) File" scrolledtext_test.py ", строка 36, в add_entry_command backend.insert (sb1.get (), sb2.get ()) TypeError: get () отсутствует 1 обязательный позиционный аргумент: 'index1'
Спасибо Вы заранее
Пожалуйста, найдите код здесь:
from tkinter import *
from tkinter import messagebox
import tkinter as tk
import backend
import csv
from backend import write_to_csv
import os
from Send_email_gui import send_email
from backend import check_assignment
from tkinter.scrolledtext import ScrolledText
import tkinter.ttk
import sqlite3
"""
functions for sqllite table creation and insert
"""
def connect():
conn=sqlite3.connect("test.db")
cur=conn.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS scrolltext (id INTEGER PRIMARY KEY, sb1_ text, sb2_ text)")
conn.commit()
conn.close()
def insert(sb1_, sb2_):
conn=sqlite3.connect("test.db")
cur=conn.cursor()
cur.execute("INSERT INTO scrolltext VALUES(NULL, ?, ?)", (sb1_, sb2_))
conn.commit()
conn.close()
"""
function for tkinter button
"""
def add_entry_command():
backend.insert(sb1.get(), sb2.get())
def __init__(self, sb1_, sb2_):
self.sb1_=sb1_
self.sb2_=sb2_
root=Tk()
root.title("How to get text from scrolledtex and save into sqlite3")
root.geometry("1366x768")
l22=Label(root, text="BKG Suggestions", wraplength=250)
l22.grid(row=27, column=2, sticky='E')
l23=Label(root, text="YE Suggestions", wraplength=250)
l23.grid(row=27, column=6, sticky='NS')
"""
Entry boxes top
"""
sb1=ScrolledText(root, height=4, width=25)
sb1.grid(row=27, column=4)
sb2=ScrolledText(root, height=4, width=25)
sb2.grid(row=27, column=7)
"""
Button
"""
b1=Button(root, text="Submit to sqlite3", width=12, command=add_entry_command)
b1.grid(row=34, column=4)
root.mainloop()