質問編集履歴
8
コードの変更があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -22,10 +22,10 @@
|
|
22
22
|
|
23
23
|
class MainMenu(tkinter.Frame):
|
24
24
|
def __init__(self,master):
|
25
|
-
super().__init__(master)
|
25
|
+
super().__init__(master,width=450,height=400)
|
26
26
|
self.pack()
|
27
27
|
self.master.title('data')
|
28
|
-
self.master.minsize(
|
28
|
+
self.master.minsize()
|
29
29
|
self.CreateWindow()
|
30
30
|
|
31
31
|
def CreateWindow(self):
|
@@ -35,21 +35,21 @@
|
|
35
35
|
self.sptxt4=tkinter.StringVar()
|
36
36
|
self.sptxt5=tkinter.StringVar()
|
37
37
|
self.sptxt6=tkinter.StringVar()
|
38
|
-
self.stlbl=tkinter.Label(text='from')
|
38
|
+
self.stlbl=tkinter.Label(self,text='from')
|
39
|
-
self.endlbl=tkinter.Label(text='to')
|
39
|
+
self.endlbl=tkinter.Label(self,text='to')
|
40
|
-
self.datelbl1=tkinter.Label(text='/')
|
40
|
+
self.datelbl1=tkinter.Label(self,text='/')
|
41
|
-
self.datelbl2=tkinter.Label(text='/')
|
41
|
+
self.datelbl2=tkinter.Label(self,text='/')
|
42
42
|
self.styear=tkinter.Spinbox(self,textvariable=self.sptxt1,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
43
43
|
self.stmonth=tkinter.Spinbox(self,textvariable=self.sptxt2,from_=1,to=12,increment=1,state='readonly',width=10)
|
44
44
|
self.stday=tkinter.Spinbox(self,textvariable=self.sptxt3,from_=1,to=31,increment=1,state='readonly',width=10)
|
45
|
-
self.datelbl3=tkinter.Label(text='/')
|
45
|
+
self.datelbl3=tkinter.Label(self,text='/')
|
46
|
-
self.datelbl4=tkinter.Label(text='/')
|
46
|
+
self.datelbl4=tkinter.Label(self,text='/')
|
47
47
|
self.endyear=tkinter.Spinbox(self,textvariable=self.sptxt4,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
48
48
|
self.endmonth=tkinter.Spinbox(self,textvariable=self.sptxt5,from_=1,to=12,increment=1,state='readonly',width=10)
|
49
49
|
self.endday=tkinter.Spinbox(self,textvariable=self.sptxt6,from_=1,to=31,increment=1,state='readonly',width=10)
|
50
50
|
|
51
|
-
self.sttime=tkinter.Entry(width=20)
|
51
|
+
self.sttime=tkinter.Entry(self,width=20)
|
52
|
-
self.endtime=tkinter.Entry(width=20)
|
52
|
+
self.endtime=tkinter.Entry(self,width=20)
|
53
53
|
|
54
54
|
self.stlbl.place(x=10,y=20)
|
55
55
|
self.styear.place(x=40,y=60,width=80,height=30)
|
@@ -115,8 +115,10 @@
|
|
115
115
|
|
116
116
|
|
117
117
|
def CreateNewWindow(self):
|
118
|
-
|
118
|
+
win2=tkinter.Toplevel(self.master)
|
119
|
-
|
119
|
+
app=NewWindow(win2)
|
120
|
+
win2.attributes('-topmost',True)
|
121
|
+
win2.grab_set()
|
120
122
|
|
121
123
|
|
122
124
|
class NewWindow(tkinter.Frame):
|
7
コードの変更があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,18 +29,24 @@
|
|
29
29
|
self.CreateWindow()
|
30
30
|
|
31
31
|
def CreateWindow(self):
|
32
|
+
self.sptxt1=tkinter.StringVar()
|
33
|
+
self.sptxt2=tkinter.StringVar()
|
34
|
+
self.sptxt3=tkinter.StringVar()
|
35
|
+
self.sptxt4=tkinter.StringVar()
|
36
|
+
self.sptxt5=tkinter.StringVar()
|
37
|
+
self.sptxt6=tkinter.StringVar()
|
32
38
|
self.stlbl=tkinter.Label(text='from')
|
33
39
|
self.endlbl=tkinter.Label(text='to')
|
34
40
|
self.datelbl1=tkinter.Label(text='/')
|
35
41
|
self.datelbl2=tkinter.Label(text='/')
|
36
|
-
self.styear=tkinter.Spinbox(self,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
42
|
+
self.styear=tkinter.Spinbox(self,textvariable=self.sptxt1,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
37
|
-
self.stmonth=Spinbox(self,from_=1,to=12,increment=1,state='readonly',width=10)
|
43
|
+
self.stmonth=tkinter.Spinbox(self,textvariable=self.sptxt2,from_=1,to=12,increment=1,state='readonly',width=10)
|
38
|
-
self.stday=Spinbox(self,from_=1,to=31,increment=1,state='readonly',width=10)
|
44
|
+
self.stday=tkinter.Spinbox(self,textvariable=self.sptxt3,from_=1,to=31,increment=1,state='readonly',width=10)
|
39
45
|
self.datelbl3=tkinter.Label(text='/')
|
40
46
|
self.datelbl4=tkinter.Label(text='/')
|
41
|
-
self.endyear=Spinbox(self,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
47
|
+
self.endyear=tkinter.Spinbox(self,textvariable=self.sptxt4,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
42
|
-
self.endmonth=Spinbox(self,from_=1,to=12,increment=1,state='readonly',width=10)
|
48
|
+
self.endmonth=tkinter.Spinbox(self,textvariable=self.sptxt5,from_=1,to=12,increment=1,state='readonly',width=10)
|
43
|
-
self.endday=Spinbox(self,from_=1,to=31,increment=1,state='readonly',width=10)
|
49
|
+
self.endday=tkinter.Spinbox(self,textvariable=self.sptxt6,from_=1,to=31,increment=1,state='readonly',width=10)
|
44
50
|
|
45
51
|
self.sttime=tkinter.Entry(width=20)
|
46
52
|
self.endtime=tkinter.Entry(width=20)
|
6
コードの変更があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -76,28 +76,27 @@
|
|
76
76
|
self.inputRule()
|
77
77
|
|
78
78
|
def inputRule(self):
|
79
|
-
self.
|
79
|
+
self.var1=tkinter.StringVar()
|
80
80
|
self.stlbl["font"]=("",20)
|
81
81
|
self.styear["font"]=("",20)
|
82
82
|
self.stmonth["font"]=("",20)
|
83
83
|
self.stday["font"]=("",20)
|
84
84
|
self.datelbl1["font"]=("",20)
|
85
85
|
self.datelbl2["font"]=("",20)
|
86
|
-
self.
|
86
|
+
self.var1.set("00:00")
|
87
|
-
self.sttime["text"]=self.
|
87
|
+
self.sttime["text"]=self.var1
|
88
88
|
self.sttime["font"]=("",20)
|
89
89
|
|
90
|
-
self.
|
90
|
+
self.var2=tkinter.StringVar()
|
91
91
|
self.endlbl["font"]=("",20)
|
92
92
|
self.endyear["font"]=("",20)
|
93
93
|
self.endmonth["font"]=("",20)
|
94
94
|
self.endday["font"]=("",20)
|
95
95
|
self.datelbl3["font"]=("",20)
|
96
96
|
self.datelbl4["font"]=("",20)
|
97
|
-
self.
|
97
|
+
self.var2.set("23:59")
|
98
|
-
self.endtime["text"]=self.
|
98
|
+
self.endtime["text"]=self.var2
|
99
99
|
self.endtime["font"]=("",20)
|
100
|
-
|
101
100
|
def getText(self):
|
102
101
|
date1=self.styear.get()+ '/'+ self.stmonth.get()+ '/'+ self.stday.get()+ ' '+self.sttime.get()
|
103
102
|
date2=self.endyear.get()+ '/'+self.endmonth.get()+ '/'+ self.endday.get()+' '+self.endtime.get()
|
@@ -117,26 +116,39 @@
|
|
117
116
|
class NewWindow(tkinter.Frame):
|
118
117
|
def __init__(self,master):
|
119
118
|
|
120
|
-
super().__init__(master,width=
|
119
|
+
super().__init__(master,width=400,height=200)
|
121
120
|
self.pack()
|
122
121
|
self.master.title('save')
|
122
|
+
|
123
123
|
self.create_save()
|
124
124
|
|
125
125
|
def create_save(self):
|
126
126
|
|
127
127
|
self.save_path=tkinter.Entry(self,width=20)
|
128
|
-
self.save_path.place(x=10,y=10,height=30,width=
|
128
|
+
self.save_path.place(x=10,y=10,height=30,width=210)
|
129
129
|
self.path_button=ttk.Button(
|
130
130
|
self,
|
131
131
|
text='フォルダーの選択',
|
132
132
|
padding=(20,5),
|
133
133
|
command=self.GetPath)
|
134
|
-
self.path_button.place(x=
|
134
|
+
self.path_button.place(x=230,y=10)
|
135
|
-
self.file_name=
|
135
|
+
self.file_name=tkinter.Entry(self,width=20)
|
136
|
-
self.file_name.place(x=10,y=50,height=30,width=
|
136
|
+
self.file_name.place(x=10,y=50,height=30,width=210)
|
137
137
|
self.file_name_tag=tkinter.Label(self,text="ファイル名")
|
138
|
-
self.file_name_tag.place(x=
|
138
|
+
self.file_name_tag.place(x=230,y=50)
|
139
|
-
|
139
|
+
self.file_save_button=ttk.Button(
|
140
|
+
self,
|
141
|
+
text='保存',
|
142
|
+
padding=(20,5),
|
143
|
+
command=self.file_save)
|
144
|
+
self.file_save_button.place(x=165,y=100)
|
145
|
+
self.button5=ttk.Button(
|
146
|
+
self,
|
147
|
+
text='cancel',
|
148
|
+
padding=(20,5),
|
149
|
+
command=self.quitWindow2)
|
150
|
+
self.button5.place(x=280,y=100)
|
151
|
+
|
140
152
|
def GetPath(self):
|
141
153
|
self.dir = 'C:\'
|
142
154
|
self.fld = tkinter.filedialog.askdirectory(initialdir = self.dir)
|
@@ -144,6 +156,14 @@
|
|
144
156
|
self.var.set(self.fld)
|
145
157
|
self.save_path["text"]=self.var
|
146
158
|
|
159
|
+
def file_save(self):
|
160
|
+
self.file_path_name=self.save_path.get()+'/'+self.file_name.get()+'.csv'
|
161
|
+
print(self.file_path_name)
|
162
|
+
|
163
|
+
def quitWindow2(self):
|
164
|
+
self.master.destroy()
|
165
|
+
|
166
|
+
|
147
167
|
def main():
|
148
168
|
root=tkinter.Tk()
|
149
169
|
app=MainMenu(master=root)
|
5
コードの変更があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -33,14 +33,14 @@
|
|
33
33
|
self.endlbl=tkinter.Label(text='to')
|
34
34
|
self.datelbl1=tkinter.Label(text='/')
|
35
35
|
self.datelbl2=tkinter.Label(text='/')
|
36
|
-
self.styear=tkinter.Spinbox(from_=2021,to=2999,increment=1,state='readonly',width=20)
|
36
|
+
self.styear=tkinter.Spinbox(self,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
37
|
-
self.stmonth=Spinbox(from_=1,to=12,increment=1,state='readonly',width=10)
|
37
|
+
self.stmonth=Spinbox(self,from_=1,to=12,increment=1,state='readonly',width=10)
|
38
|
-
self.stday=Spinbox(from_=1,to=31,increment=1,state='readonly',width=10)
|
38
|
+
self.stday=Spinbox(self,from_=1,to=31,increment=1,state='readonly',width=10)
|
39
39
|
self.datelbl3=tkinter.Label(text='/')
|
40
40
|
self.datelbl4=tkinter.Label(text='/')
|
41
|
-
self.endyear=Spinbox(
|
41
|
+
self.endyear=Spinbox(self,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
42
|
-
self.endmonth=Spinbox(
|
42
|
+
self.endmonth=Spinbox(self,from_=1,to=12,increment=1,state='readonly',width=10)
|
43
|
-
self.endday=Spinbox(
|
43
|
+
self.endday=Spinbox(self,from_=1,to=31,increment=1,state='readonly',width=10)
|
44
44
|
|
45
45
|
self.sttime=tkinter.Entry(width=20)
|
46
46
|
self.endtime=tkinter.Entry(width=20)
|
4
実行結果に変化があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -163,4 +163,5 @@
|
|
163
163
|
|
164
164
|
ウィンドウを表示するコードになります。
|
165
165
|
データを検索するプログラムをCreateWindowのクラス内に入れていたのですが、そちらを削除したところスピンボックスの方は表示されるようになりました。
|
166
|
-
visualstudioの方で編集実行していたのですが、pythonから実行したところスピンボックスの方は一つも表示され
|
166
|
+
visualstudioの方で編集実行していたのですが、pythonから実行したところスピンボックスの方は一つも表示されないという状態です。
|
167
|
+
新しく開くウィンドウの方は無事表示されるようになりました。
|
3
実行結果に変化があったため編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -162,4 +162,5 @@
|
|
162
162
|
### 補足情報(FW/ツールのバージョンなど)
|
163
163
|
|
164
164
|
ウィンドウを表示するコードになります。
|
165
|
-
データを検索するプログラムをCreateWindowのクラス内に入れていたのですが、そちらを削除したところスピンボックスの方は表示されるようになりました。
|
165
|
+
データを検索するプログラムをCreateWindowのクラス内に入れていたのですが、そちらを削除したところスピンボックスの方は表示されるようになりました。
|
166
|
+
visualstudioの方で編集実行していたのですが、pythonから実行したところスピンボックスの方は一つも表示されず新しく開いたウィンドウの方は1つ目のテキストボックスとボタンのみ表示されるという状態です。
|
2
StringVarをよく理解できていなかったので編集しました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -29,15 +29,13 @@
|
|
29
29
|
self.CreateWindow()
|
30
30
|
|
31
31
|
def CreateWindow(self):
|
32
|
-
self.ptxt=tkinter.StringVar()
|
33
|
-
|
34
32
|
self.stlbl=tkinter.Label(text='from')
|
35
33
|
self.endlbl=tkinter.Label(text='to')
|
36
34
|
self.datelbl1=tkinter.Label(text='/')
|
37
35
|
self.datelbl2=tkinter.Label(text='/')
|
38
|
-
self.styear=tkinter.Spinbox(
|
36
|
+
self.styear=tkinter.Spinbox(from_=2021,to=2999,increment=1,state='readonly',width=20)
|
39
|
-
self.stmonth=Spinbox(
|
37
|
+
self.stmonth=Spinbox(from_=1,to=12,increment=1,state='readonly',width=10)
|
40
|
-
self.stday=Spinbox(
|
38
|
+
self.stday=Spinbox(from_=1,to=31,increment=1,state='readonly',width=10)
|
41
39
|
self.datelbl3=tkinter.Label(text='/')
|
42
40
|
self.datelbl4=tkinter.Label(text='/')
|
43
41
|
self.endyear=Spinbox(textvariable=self.sptxt,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
1
ウィンドウ作成の全体のコードを書かせていただきました。
title
CHANGED
File without changes
|
body
CHANGED
@@ -13,30 +13,36 @@
|
|
13
13
|
### 該当のソースコード
|
14
14
|
|
15
15
|
```python
|
16
|
+
import tkinter
|
17
|
+
from tkinter import *
|
18
|
+
from tkinter import ttk
|
19
|
+
import datetime
|
20
|
+
import tkinter.filedialog
|
21
|
+
import os,sys
|
22
|
+
|
16
23
|
class MainMenu(tkinter.Frame):
|
17
24
|
def __init__(self,master):
|
18
25
|
super().__init__(master)
|
19
26
|
self.pack()
|
20
27
|
self.master.title('data')
|
21
|
-
self.master.minsize(width=
|
28
|
+
self.master.minsize(width=450,height=400)
|
22
29
|
self.CreateWindow()
|
23
30
|
|
24
31
|
def CreateWindow(self):
|
25
|
-
|
32
|
+
self.ptxt=tkinter.StringVar()
|
26
33
|
|
27
|
-
|
28
34
|
self.stlbl=tkinter.Label(text='from')
|
29
35
|
self.endlbl=tkinter.Label(text='to')
|
30
36
|
self.datelbl1=tkinter.Label(text='/')
|
31
37
|
self.datelbl2=tkinter.Label(text='/')
|
32
|
-
self.styear=tkinter.Spinbox(textvariable=sptxt,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
38
|
+
self.styear=tkinter.Spinbox(textvariable=self.sptxt,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
33
|
-
self.stmonth=Spinbox(textvariable=sptxt,from_=1,to=12,increment=1,state='readonly',width=10)
|
39
|
+
self.stmonth=Spinbox(textvariable=self.sptxt,from_=1,to=12,increment=1,state='readonly',width=10)
|
34
|
-
self.stday=Spinbox(textvariable=sptxt,from_=1,to=31,increment=1,state='readonly',width=10)
|
40
|
+
self.stday=Spinbox(textvariable=self.sptxt,from_=1,to=31,increment=1,state='readonly',width=10)
|
35
41
|
self.datelbl3=tkinter.Label(text='/')
|
36
42
|
self.datelbl4=tkinter.Label(text='/')
|
37
|
-
self.endyear=Spinbox(textvariable=sptxt,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
43
|
+
self.endyear=Spinbox(textvariable=self.sptxt,from_=2021,to=2999,increment=1,state='readonly',width=20)
|
38
|
-
self.endmonth=Spinbox(textvariable=sptxt,from_=1,to=12,increment=1,state='readonly',width=10)
|
44
|
+
self.endmonth=Spinbox(textvariable=self.sptxt,from_=1,to=12,increment=1,state='readonly',width=10)
|
39
|
-
self.endday=Spinbox(textvariable=sptxt,from_=1,to=31,increment=1,state='readonly',width=10)
|
45
|
+
self.endday=Spinbox(textvariable=self.sptxt,from_=1,to=31,increment=1,state='readonly',width=10)
|
40
46
|
|
41
47
|
self.sttime=tkinter.Entry(width=20)
|
42
48
|
self.endtime=tkinter.Entry(width=20)
|
@@ -69,19 +75,57 @@
|
|
69
75
|
self.button1.place(x=300,y=240)
|
70
76
|
self.button2.place(x=300,y=270)
|
71
77
|
|
78
|
+
self.inputRule()
|
79
|
+
|
80
|
+
def inputRule(self):
|
81
|
+
self.var=tkinter.StringVar()
|
82
|
+
self.stlbl["font"]=("",20)
|
83
|
+
self.styear["font"]=("",20)
|
84
|
+
self.stmonth["font"]=("",20)
|
85
|
+
self.stday["font"]=("",20)
|
72
|
-
|
86
|
+
self.datelbl1["font"]=("",20)
|
87
|
+
self.datelbl2["font"]=("",20)
|
88
|
+
self.var.set("00:00")
|
89
|
+
self.sttime["text"]=self.var
|
90
|
+
self.sttime["font"]=("",20)
|
91
|
+
|
92
|
+
self.var=tkinter.StringVar()
|
93
|
+
self.endlbl["font"]=("",20)
|
94
|
+
self.endyear["font"]=("",20)
|
95
|
+
self.endmonth["font"]=("",20)
|
96
|
+
self.endday["font"]=("",20)
|
97
|
+
self.datelbl3["font"]=("",20)
|
98
|
+
self.datelbl4["font"]=("",20)
|
99
|
+
self.var.set("23:59")
|
100
|
+
self.endtime["text"]=self.var
|
101
|
+
self.endtime["font"]=("",20)
|
102
|
+
|
103
|
+
def getText(self):
|
104
|
+
date1=self.styear.get()+ '/'+ self.stmonth.get()+ '/'+ self.stday.get()+ ' '+self.sttime.get()
|
105
|
+
date2=self.endyear.get()+ '/'+self.endmonth.get()+ '/'+ self.endday.get()+' '+self.endtime.get()
|
106
|
+
#data_output(date1,date2)
|
107
|
+
self.CreateNewWindow()
|
108
|
+
|
109
|
+
def quitWindow(self):
|
110
|
+
self.master.destroy()
|
111
|
+
|
112
|
+
|
113
|
+
|
73
114
|
def CreateNewWindow(self):
|
74
115
|
self.newwindow=tkinter.Toplevel(self.master)
|
75
116
|
self.app=NewWindow(self.newwindow)
|
117
|
+
|
118
|
+
|
76
119
|
class NewWindow(tkinter.Frame):
|
77
120
|
def __init__(self,master):
|
78
121
|
|
79
122
|
super().__init__(master,width=300,height=200)
|
80
|
-
self.pack
|
123
|
+
self.pack()
|
81
124
|
self.master.title('save')
|
82
125
|
self.create_save()
|
83
126
|
|
84
127
|
def create_save(self):
|
128
|
+
|
85
129
|
self.save_path=tkinter.Entry(self,width=20)
|
86
130
|
self.save_path.place(x=10,y=10,height=30,width=70)
|
87
131
|
self.path_button=ttk.Button(
|
@@ -94,6 +138,21 @@
|
|
94
138
|
self.file_name.place(x=10,y=50,height=30,width=70)
|
95
139
|
self.file_name_tag=tkinter.Label(self,text="ファイル名")
|
96
140
|
self.file_name_tag.place(x=90,y=50)
|
141
|
+
|
142
|
+
def GetPath(self):
|
143
|
+
self.dir = 'C:\'
|
144
|
+
self.fld = tkinter.filedialog.askdirectory(initialdir = self.dir)
|
145
|
+
self.var=tkinter.StringVar()
|
146
|
+
self.var.set(self.fld)
|
147
|
+
self.save_path["text"]=self.var
|
148
|
+
|
149
|
+
def main():
|
150
|
+
root=tkinter.Tk()
|
151
|
+
app=MainMenu(master=root)
|
152
|
+
app.mainloop()
|
153
|
+
|
154
|
+
if __name__=="__main__":
|
155
|
+
main()
|
97
156
|
```
|
98
157
|
|
99
158
|
### 試したこと
|
@@ -104,4 +163,5 @@
|
|
104
163
|
|
105
164
|
### 補足情報(FW/ツールのバージョンなど)
|
106
165
|
|
107
|
-
|
166
|
+
ウィンドウを表示するコードになります。
|
167
|
+
データを検索するプログラムをCreateWindowのクラス内に入れていたのですが、そちらを削除したところスピンボックスの方は表示されるようになりました。
|