インタラクティブモードとスクリプトモードの違いの動画は、新しく作ってアップする予定は今のところありません😵 インタラクティブモードとスクリプトモードでの実行について、以下の動画でそれぞれ説明しているので、もしもご参考になればと思います! Windows (2:59~) ▶︎ ua-cam.com/video/XhbRqItkIYI/v-deo.html Mac (4:09~) ▶︎ ua-cam.com/video/Gu0K4ammlHg/v-deo.html
次のような、エラーが出て困っています。 in class Application(tkinter.Frame): AttributeError: partially initialized module 'tkinter' has no attribute 'Frame' (most likely due to a circular import)
最後の"3. Excelファイルにデータを1つ書き込むアプリのコード”のところで、 ”Exception in Tkinter callback Traceback (most recent call last): File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\tkinter\__init__.py", line 1892, in __call__ return self.func(*args) File "c:\Users\user\OneDrive\デスクトップ\Tkinter\Practice_Tkinter.py", line 41, in save_data wb = openpyxl.load_workbook(file_name) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl eader\excel.py", line 315, in load_workbook reader = ExcelReader(filename, read_only, keep_vba, File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl eader\excel.py", line 124, in __init__ self.archive = _validate_archive(fn) File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl eader\excel.py", line 96, in _validate_archive archive = ZipFile(filename, 'r') File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\zipfile.py", line 1257, in __init__ self._RealGetContents() File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\zipfile.py", line 1324, in _RealGetContents raise BadZipFile("File is not a zip file") zipfile.BadZipFile: File is not a zip file ” こんな感じのエラーみたいなのが出てデータが保存されないです。 ご指摘、お願いします。。。
女の子が解説するのってすごく大事なんだと思いました。
女性エンジニアは少ないですから、珍しいですかね!!
情報系って結構女性が多かったし女性向け求人も割と多いイメージだけど実態は違うんかな
数学、工学的な要素が入るとやっぱり男性が多いイメージだけど
超わかりやすい、あと声可愛い
ありがとうございます!!!
tkinter習い始めです。チャンネル登録しました。楽しい。動画は宝の山です!
チャンネル登録ありがとうございます!
今研修でやってて、マジで参考にしてます!
thx!!!!
参考にしてもらえて嬉しいです😆
研修、頑張って下さい!!
最近Tkinter使ってみたんですが、すごく楽しいですね
警告文を表示させてボタンを押すとそのあとのコードを実行するという簡単なものですが、他にも色々作ってみたいと思います。
コメントありがとうございます😊
自分でアプリが作れると、とっても楽しいですよね!!ぜひ、色々触って自分だけのオリジナルアプリを作って見てください!
細かいところまで、誤魔化さず説明いただいて、とても分かり易いです。
ご視聴ありがとうございます😊そう言っていただけて嬉しいです!
初めてだったのですがとても分かりやすかったです!
質問ですが、こんな感じで作ったデスクトップアプリを配布することは出来るんでしょうか。
(配布された側がダウンロードして解凍したら中にexeファイルがあってそれを起動させたらアプリが開くような感じ)
PythonのスクリプトをEXEにするというpyinstallerライブラリの動画があるので、それを使ったらイメージされていることができるかもしれません。ただ、pyinstallerは重かったりうまくEXE化できないこともあるので、その点も考慮して検討してみていただけたらと思います。
EXE化の動画 ▶︎ ua-cam.com/video/dt7uuKztjjQ/v-deo.html
初学者の私でも、アレンジできる楽しい動画でした。ありがとうございました。
Tkinter第二弾も楽しく視聴させて頂きます。
ご視聴いただきありがとうございます😊
Tkinterのウィジェットを色々紹介している動画も出しているので、ぜひアレンジしてオリジナルのデスクトップアプリ作成に取り組んでみてください!!
グローバル変数での受け渡しをずっとやってたんですが、この動画のおかげでやっと卒業できそうです
いつも動画を拝見させて頂いて、非常に勉強になっています。
一つ質問なんですが、もし初歩すぎたら申し訳ありません。
tkinterを使ってデスクトップアプリの最初の画面で背景画像を入れるにはどうしたら良いのでしょうか?
職業訓練学校でpython やってます。
本当に基本的な事しかやらないので、動画参考にさせてもらいます。
職業訓練学校でもPythonが学べるのですね☺️
このチャンネルも基本的なPython文法の動画がメインですが、少しずつ応用的な内容の動画も出しているので、ぜひ、色々見てもらえたら嬉しいです!!
初めて動画拝見させていただき、とても分かりやすい説明だったので
早速チャンネル登録しました。
仕事でpythonを使っていて、最近tkinterでのツール作成作業で詰まっていたので
すごく助かりました。現在上げていただいているpython関係の動画も見て色々挑戦したいと思います!今後ともよろしくお願いします。
ご視聴いただきありがとうございます😊
Tkinterの動画がお役に立ったようで、とっても嬉しいです!!Python関連の動画をたくさん出しているので、是非いろいろ見てみてください😉
こんにちは、気になるところがありましたので質問させてください。
ウィジェット作成のself.create.widgets() と ボタンの処理にある self.root.destroyやself.input.handler はどれもクラスメソッドなのになぜ丸括弧を片やつけて片や外したりするのですか?
メソッドの呼び出しだから丸括弧が必要かと思ったらつけたら逆に動かないですし、
どういうモノに対しては丸括弧をつけちゃいけないのか、なにを判断材料にするとよいのでしょうか?
メソッドに()をつけるとメソッドが実行されてしまいます。()を付けずにメソッドをオブジェクトとしてcommandに設定しているんですよね。ちょっと難しいのですが、デコレータの動画の中で同じように「関数を変数として扱うこと」を説明している部分があるので、以下の動画の3:48あたりから見てみたらイメージが湧くかもです。
ua-cam.com/video/A4md-u022MY/v-deo.html
@@pythonvtuber9917
commandオプションにおける処理の中に、その中身のオブジェクトを関数として実行する処理があるから丸括弧をつけちゃいけないという事でしょうか。
丸括弧をつけると関数を実行した結果が格納されるからエラーになって、
つけないとアプリ終了やテキストボックスの中身をメッセージボックスに移す といった動作が格納されるから処理が進むという事でしょうか。
ご説明ありがとうございます。
この動画の構文をベースに、仕事で使うアプリを作成しています。
今まで、Class の定義は得意じゃなかったのですが、分かりやすく基本を押させることができました。
一回覚えるとサクサクですね(笑)
ご視聴いただきありがとうございます!!
お仕事で使われるアプリを作成してて素敵です✨ サプーのこの動画が役に立っていたら嬉しいです😊
とても参考になる動画でありがたいです。
wxPythonも勉強しているので、もしできたらみたいです!
他の動画も楽しく拝見してます〜
ご視聴いただきありがとうございます😊
wxPythonですね!!動画作成、検討してみます😉
チャンネル登録させていただきました。
いつも勉強させていただいております。
今後とも、よろしくお願いいたします。
チャンネル登録ありがとうございます😆
これからもPython関連の動画を出していくので、応援よろしくお願いします!!
fletの解説など見てみたいです!!
6:38 引数
プログラミングにおける手続きにおいて、プロシージャ(手続き)の呼び出し元と呼び出し先で値をやりとりするための変数あるいはその値のこと
8:17インスタンス
ソフトウェアの分野では、あらかじめ定義されたコンピュータプログラムやデータ構造などを、メインメモリ上に展開して処理・実行できる状態にしたものを指す
17:28 ダイアログ
パソコンの操作画面上で、動作確認の要求やエラーメッセージの表示をするウインドーのこと
最近pythonアプリづくりにチャレンジしていたので、、とても参考になりました!(本よりわかりやすかったです!)
質問ですが、、
サンプルコードのライセンスといいますか、こういう条件だと使っちゃダメ的なものってありますか??
ご視聴いただきありがとうございます!
サンプルコードはご自由に使っていただいて大丈夫です😊
動画やスライドなどを無断で使用・転載などはNGですが、サンプルコードは特に制限はありません😉
@@pythonvtuber9917
回答ありがとうございます。参考にさせていただきます!
すみません、13:40までのコードで実行するとエラーが出ます(typoはないはず)
AttributeError: 'Application' object has no attribute 'message'
self.mesage = tkinter.Message(self)のselfをtext='hi'にするとエラーが出ず、しかし'hi;はフレーム外で表示されました、side='top'も'bottom'も同じです
そして #メッセージ出力 のコードを #実行ボタン の前に移すとフレーム内で最初に!!だけ出て(まだ入力してない)、入力しても何も出ない
エラーはapp.Application(root=root) -> self.create_widgets() -> submit_btn['command'] = self.input_handler() -> self.message['text'] = text + '!!' -> AttributeError: 'Application' object has no attribute 'message'の順で発生しました、どうしたら良いのでしょうか?
ソースコード:github.com/CodeForError/ErrorCode/blob/main/Own_Desktop_APP.py
ご質問ありがとうございます!
GitHubでのコード連携、ありがたいです!!
① create_widgetsの中で、self.message の変数を作成する前にself.input_handlerを呼び出しているので、messageなんてインスタンス変数はないよ??って言われてるんですね。なので、「# メッセージ出力」のコメント下の2行を 「# 実行ボタン」のコメント下4行より上に記載してあげたらエラーは出なくなります。
② !!だけ出てしまう件ですが、submit_btn['command'] に関数を設定するとき「()」をつけて呼び出しの形にしているからですね。なので、丸括弧をつけずに、submit_btn['command'] = self.input_handler と書くと、初期表示で「!!」が表示されなくなります。
@@pythonvtuber9917 治りました!ありがとうございます!
質問失礼します。
windowsでやっているのですがエディタは何を使えばいいですか?
ご回答お願い致します。
エディターはVSCodeかPyCharmが主流かな、と思います!
どちらも解説動画を出しているので、よければ見てみてください😉
VSCode ▶︎ ua-cam.com/video/B8WnCAOcheM/v-deo.html
PyCharm ▶︎ ua-cam.com/video/FaI8wcC1PXI/v-deo.html
@@pythonvtuber9917 ありがとうございます!!
最近pythonをやり始めましたが、とても分かりやすい説明で助かってます。最後のclassを使ったプログラムをPySimpleGUIで同じことをやろうと試みてますが、ぜんぜんうまくいきません。どこを変えたら良いのでしょうか。
ご視聴いただきありがとうございます!
全然上手くいかないとは、どのような状態でしょうか?エラーが出力されて困っているのであれば、エラー解消方法の動画を出しているので、見てみてください😉 ▶︎ ua-cam.com/video/n-CEndcgAFY/v-deo.html
@@pythonvtuber9917
説明が分かりやすくて助かります。一通り見ました。なんか、素人考えで、全く同じコードで動くかなあと案に思いましたが、考えてコード作ったらpysimpleguiでもできました。ありがとうございます!
やり方探してたので助かりました。あとアバターがかわいい。めちゃくちゃ好き。
ご視聴いただきありがとうございます😊
Python関連の動画を色々出しているので、ぜひ気になるトピックがあれば見てもらえたら嬉しいです!
先生~pyinstallerについての解説も欲しいです!config.iniありのとき、エラーが出てどはまりしています、iniファイルがを見つかりませんという( ^ω^)・・・
ご要望ありがとうございます!pyinstallerですね!!すぐには作れないと思うんですが、検討してみます😊
既にインストールしている場合でもコマンドプロンプトで
pip install pyinstaller
実行して見てください。 3.8系でしかインストールできない気がしました
tkinterの日本語解説動画は貴重なのでシリーズ化希望です!
ところで class Application(tkinter.Frame)
の初期化の部分が
def __int__(self ,root) から
def __int__(self ,root=None)
と =None が加わったのはなぜですか?
Tkinter、反響があって嬉しいです!第2弾の動画も考えてみますね😊
そして、デフォルト引数 root=None は予期せず入っていました💦
特に意味はないので、気にしないでください!!
@@pythonvtuber9917
def __int__(self ,root) で良いということですか?
完全に個人的な要望なのですが、リストボックスとかで選択した値によって実行結果が変わるプログラムを作りたいと考えていたいので、リストボックスがからむ動画だと超うれしいですw
はい、def __int__(self, root):で大丈夫です!
なるほど、リストボックスですね!紹介しきれていないウィジェットの使い方の動画、良さそうですね!Tkinterの第2弾の動画、すぐには出せないかもしれませんが考えてみますね😉
他の動画でもそうなんですけど、沢山のライブラリの使い方をどこで学んだんですか?知りたいです
ご質問ありがとうございます!
お仕事の中で使ってるものもあれば、趣味で使ってるものもあり、基本的に公式サイトを読んで勉強しています😉
@@pythonvtuber9917
ありがとうございます〜〜〜🙇♂️
app = Application(root =root)はなぜいるのでしょうか?
ありがとうございます!
Super thanksありがとうございます!!
ありがたいです✨
分かりやすい動画ありがとうございます!
今回作ったTkinterデスクトップアプリを
scheduleモジュールを使って
決まった時刻に定期表示させるようにするには
どのようにすればいいでしょうか?
ご質問ありがとうございます😊
scheduleモジュールで呼び出す関数の中でrootの作成とmainloopの呼び出しの部分(動画内でClass以外の部分)を実行したら良いかな、と思います!
@@pythonvtuber9917 ありがとうございます!!
できました!!毎朝アプリを立ち上げて入力した内容に合わせて
設定した音楽を流せるようにしてみます😆テキストボックスに
入力する内容も音声データを認識して入力できたらいいなと思ってます!
サプーさんが居てくれて良かったです!🙇🙇
よかったです!!
ぜひ、自分オリジナルのアプリを色々作り込んで楽しんでください😊
@@pythonvtuber9917 はい!楽しみながら学習していきます!
今後も参考にさせていただきますね!☺
全然関係ないけど声が好き😂
ありがとうございます😉
Windowsのデスクトップアプリ作るには、C#とPythonのどちらの方がいいですか?
質問ありがとうございます!
WindowsのデスクトップアプリならC#の方が良いと思います😊
本チャンネルのテーマがPythonなので、この動画はPythonでデスクトップアプリを作っていますが、C#も書けるならC#がおすすめです😉
質問なのですが、vscodeで
import tkinter as tk
root = tk.Tk()
root.mainloop()
と記述して実行してもtkオブジェクトが出てきません。
また、上記コード記述したファイルのフォルダ内に
__pycache__フォルダとtkinter.cpython-311が作成され、
tkinter.cpython-311をクリックするとtkオブジェクトらしきものが
でてくる状況です。
サプーさんが動画で説明しているように実行してtkオブジェクトを出すには
どうすればいいですか?ご教授お願いします。
テキサスのRice大学のコンピュータ科学は小ぶりですが、レベルが高いと言われています。そこのPythonのコースで、Riceが作ったデスクトップアプリ作成ソフトで宇宙船がミサイルで隕石を落とすゲームを作り見した。Tkinterととても似ていますね。RiceのはPython2でしか動かないので、その後、あまり使われていないかもしれません。
コメントありがとうございます😊
Riceというのも初めて知りました!TkinterはPython3でも使えるので、ぜひ簡単なデスクトップアプリを作る際は使ってみてください😉
2. テキストボックスから入力された値に「!!」をつけて画面に表示するアプリのコード ですが、text_boxが表示されません。教えてください。
Geometrty(400✖️300)がうまく行きません。✖️の記号は入力しますか?教えて下さい・。
ご質問ありがとうございます😊
「400x300」の「掛けるのマーク」は入力します!動画では分かりにくくて申し訳ないのですが、小文字のエックス「x」になります。以下のリンクにサンプルコードがあるので、こちらをご参考にしてみてください😉
colab.research.google.com/drive/1_ifu9PP-2jSDEcac3xvdP9w19kW9ZtDw?usp=sharing
丁寧な説明ありがとうございます!とても勉強になります。
13:40ごろのコードの37行目でエラーが出ます。
コード:self.message['text'] = text + '!!'
エラー文:AttributeError: 'Application' object has no attribute 'message'
同じように書いているつもりなのですが、どこか間違っているのでしょうか?
37行目を抜くと起動します。
お時間ありましたらご教示よろしくお願いいたします。
self.messageを定義していないのではないでしょうか?
概要欄にソースコードが記載されているcolabのURLがありますため、コピペなどで動かしてみてご確認ください。
@@pythonvtuber9917
お忙しい中お返事ありがとうございます!
コードをコピペしていろいろ見比べたところ
self.input_handlerがself.input_handler()になっていました…。
そこを修正したら動きました。
サプーさんの動画は10分そこそこの長さのものが多く
移動時間に見られるのでとても有難いです。
「ここは今はふんわりした理解で大丈夫です」など
理解度の目安も示してくれるので本当に助かります。
これからも応援しております!!
初めまして。動画拝見して勉強させて頂いております。
閉じるボタンのコード、VScodeでは実行出来ましたが、jupyterlabで実行しようとすると2行目の「class appli〜」で「indentationerror expect an indent block」というインデントが適切に出来ていないというエラーがでてしまいます。なぜでしょうか??
ご質問ありがとうございます!
私の方でjupyter notebookで実行してもそのようなエラーが出ないため、コピーの段階で何かしらインデントが崩れるスペースなどが入っているのではないでしょうか?
またエラー解消の動画も出しているので合わせてご覧ください!
▶︎ua-cam.com/video/n-CEndcgAFY/v-deo.html
Excelファイルを他の人が編集中にこのアプリで書き込みを行ったらどうなるのでしょうか?
全体で共有するExcelなどには不向きですかね?
確か他の人が開いている最中に書き込みを行うと、他の人が閉じたタイミングで更新された気がします!
共有設定での動作はちょっと試してないです😵
デスクトップアプリのですが、相手(配布)先にPythonがインストールされいなくても、
動きますか?
ご質問ありがとうございます!
TkinterだけだとPythonがインストールされていない環境ではデスクトップアプリは動きません... pyinstallerというPythonがインストールされていない環境でもPythonで書いたコードが動かせる、Exe化ライブラリがあり、その紹介動画も出しているので、ちょっとexeの起動が重いですが、こちらの併用もぜひご検討ください😉
Exe化 (pyinstaller) ▶︎ ua-cam.com/video/dt7uuKztjjQ/v-deo.html
@@pythonvtuber9917
早々のご返答誠にありがとうございます。
大変勉強になりました。
ありがたや~
お役に立てていたら嬉しいです😊
app = Application(root=root)の部分がどうしてもTcl Error unknown option "-root"になってしまいます。どうやったら改善できますか?
コードの全体が分からないのでどこが間違っているのか分からないのですが、動画の詳細に記載しているColab上のコードをコピペして動かしても同じエラーになりますか?サンプルコードと何が違うかご確認ください。
こんにちは。初めまして。ちょっと怪我で休んでいるもので、昔SEだったこともあって、何かまた勉強しようかなってここに辿り着きました、古い動画へのコメントで申し訳ありません。見てもらえるかなww 環境は、M1 mac で macOS Ventura 13.0.1 Pythonは 3.9.1です。今回のコードを自分で入力しても、サンプルをcolabからコピぺしても、フレームの中が真っ黒でどうにもなりません。色々なところのネットで調べて、背景の設定を試したのですが、ダメでした。イニシャライザ(super().__init__(root, width=380, height=280, borderwidth=1, relief='groove', bg = 'white'))やテキストボックス(self.text_box['bg'] = 'white')など、bgもしくはbackgroundで色を設定しても、真っ黒なままっです。テキストボックスやメッセージがどこに表示されているかわかりません。テキストボックスは設定されているようで、カーソルを持っていくと入力できる形になります。2つ目の課題で、それらしき場所にデータを入力して、エクセルに出力すると問題く反映されているので、土台かアプリのどちらかでなんとか背景を変えられれば、動きが見られるのではないかと思っています。geometryでサイズを大きくしても全体が真っ黒で、root.configure(background = 'white')と設定してもだめでした。何かお知恵があればご伝授いただければと思います。お手数ですが、よろしくお願いいたします。長文、失礼いたしました。
colabのコードをコピペして動かしても上手くいかないとなると、ちょっと私の方では分からないですね...私の環境ではうまくいくため不具合の再現ができず、何が原因なのか調べられないです...お力になれず申し訳ないです。
@@pythonvtuber9917 ご返信ありがとうございます。やはり最新macとなるといろいろ変わっているでしょうし、ダメなんですかね。この後のBeautifulSoapも、タグが変わってしまってうまくいきませんでした。中間データ表示したりしていろいろ試行錯誤していますが、難しいですね。しまってあったmac mini late2014 たぶんmacos catalinaをちょっと整備してみようと思います。またよろしくお願いいたします。
python6カ月初心者です!!
難しくてあまり理解はできませんでしたが、なんとかテキストボックスの所まではできました!!
質問です!
10:55 の
self.text_box['width'] = 10
の
self.text_box['width'] [ ] の部分は
なんの役割で 名称、使い方などがあれば教えて欲しいです!!
ご質問、ありがとうございます!!
[ ]は何の役割なのか、名称、使い方を教えて欲しい、とのことですが、Tkinterでの役割としては、オプションの指定と言ったほうが良いでしょうか🤔 オプションの指定の仕方は3つあって、以下の参考ページの2番目の方法を使っています!
参考 ▶︎ docs.python.org/ja/3/library/tkinter.html#setting-options
設定したいオプション名を[ ]の中に書いて「 ウィジェット[オプション名]= 値 」で、ウィジェットのオプションに値を設定できます!
絶対6ヶ月真面目にやってないでしょw
悪いこと言わんから6ヶ月でそのレベルなら向いてない。やめときな
Wakarimasen, but still following the examples.
I'm sorry I can't translate this video 😵
下記のエラーから抜け出せません。
「AttributeError: 'str' object has no attribute 'tk'」
M1 macを使用して、動作させています。
アドバイス等あれば、ご教授頂けないでしょうか?
ご質問ありがとうございます!
エラー文の通り、文字列型のオブジェクトにはtkという属性(メソッドやインスタンス変数)がないという意味だと思います😉 基本的なエラー解消について動画を出しているので、ご覧ください
▶︎ ua-cam.com/video/n-CEndcgAFY/v-deo.html
いつも動画を楽しみにしています
submit_btn['command'] = self.input_hnadler
AttributeError: 'Application' object has no attribute 'input_hnadler'この様な警告が出て困っています。ご指摘をお願いします。
ご質問ありがとうございます😊
「input_hnadlerが無いよ」と言うエラーなのでApplicationクラス内にinput_hnadlerと言うメソッドが無いのだと思います!動画の中では「input_handler」と言う名前でメソッドを作っているので、ひょっとしたらタイピングミスでは無いでしょうか?
・正: input_handler
・誤: input_hnadler
また、エラー解消のための動画も出しているので、よければ見てみてください😉
エラー解消の方法 ▶︎ ua-cam.com/video/n-CEndcgAFY/v-deo.html
ありがとうございました,その通りにタイピングミスでした
pythonはインタプリタ型の言語ですよね。コンパイルして、独立したアプリとして動作するのでしようか?
ご質問ありがとうございます!Tkinterではコンパイルはせずに、PythonからGUIツールキットを呼び出してデスクトップアプリとして動くようにしているものになります😉
他のyoutubeの投稿で ”Pythonプログラムをexeファイル化する方法” というのを見つけました。コンパイルと方法は違っても、単独で動かせる事を識りました。
Kevin’s Data Analytics
”Pythonプログラムをexeファイル化する方法”
まあ、実際に触ってみないと何とも言えませんが、ある業務をシステム化する時にEXCELのフレ−ムとマクロを使うほか無いかなと思っていたのですが新しい候補が見つかりました。
終了ボタンでdestroyを実行するとずっと通信中になり実行できないのですがどうしてでしょうか
通信中とはどのような状態でしょうか?「通信」というと相手先があるかと思いますが、どこと通信しているのでしょうか?また、エラーや何か文言は出力されていますか?
エラー解消方法について動画を出しているので合わせてご覧ください。
ua-cam.com/video/n-CEndcgAFY/v-deo.html
これウェブサイトのURLを入れたら
そのリンク先に飛ぶっていうことも出来るんですか?
ご質問ありがとうございます!
pythonのwebbrowserモジュールのopen_newを使ったらできるかと思います!サンプルコードをいかに記載しておきますね😉
======= 以下 Pythonコード =======
import webbrowser
url = 'docs.python.org/' # 画面から受け取る
webbrowser.open_new(url)
えっすご!出来るんですね!サンプルコードまで教えてくださりありがとうございます!😊
こんにちは。インタラクティブモードとスクリプトモードの違いの動画をアップ予定はありませんか?いい動画がないようです。
インタラクティブモードとスクリプトモードの違いの動画は、新しく作ってアップする予定は今のところありません😵
インタラクティブモードとスクリプトモードでの実行について、以下の動画でそれぞれ説明しているので、もしもご参考になればと思います!
Windows (2:59~) ▶︎ ua-cam.com/video/XhbRqItkIYI/v-deo.html
Mac (4:09~) ▶︎ ua-cam.com/video/Gu0K4ammlHg/v-deo.html
すごい大雑把な説明になるんですけど、tkinterで作成したアプリの閉じるボタン最大化最小化ボタンを非表示にしたいんですけど、なにか案はありますでしょうか。
ご質問、ありがとうございます😊
「root.overrideredirect(True)」ってコードをroot.geometryの後とかに書いてあげると、閉じるボタンとか、最大化・最小化ボタンを非表示にできます!
こんな感じです👇
================
root = tkinter.Tk()
root.geometry('400x300')
root.overrideredirect(True)
app = Application(root)
app.mainloop()
@@pythonvtuber9917 わざわざありがとうございます!試してみます!ありがとうございます!!
試しに閉じるボタンのアプリのコードを参考にさせていただいたのですが、エラーが起きてしまい、applicationクラス内のcreate_widgets部分を最初に書き、__init__部分を後にしたらなぜか実行できました。なぜなのか分からないので教えてほしいです。
すいませんもう一回やったらできました。スペルミスしてたみたいです。
解決できたようでよかったです😊
ぜひ色々カスタマイズしてデスクトップアプリを作ってみてください!
@@pythonvtuber9917 ありがとうございます
次のような、エラーが出て困っています。
in
class Application(tkinter.Frame):
AttributeError: partially initialized module 'tkinter' has no attribute 'Frame' (most likely due to a circular import)
エラーメッセージに循環インポートが原因ではないか?と書かれていますね。ひょっとして「tkinter.py」といったような名前でPythonスクリプトやフォルダーを作っていたりしますかね?もしそうなら、別の名前をつけてみてください。
素早い回答ありがとうございます。
まさにご指摘の通りでした。
名前を変更したら、ちゃんと動きました。
とりあえずマックで表示できました。
タイピング練習アプリ作ってみます^_^
貧弱なパソコンなのでエクセル無しでcsvファイルでやります(o^^o)
タイピング練習アプリ!良いアイディアですね😊
ぜひ、Tkinterで色々作ってみてください!
pack_propagate(0) の引数''0"はFalseを意味するものでしょうか?
ご質問、ありがとうございます!おっしゃる通り、Falseを意味します!
ただ、なぜFalseじゃなくて0と書いているのか覚えてないです....😵
ありがとうございます!
チャンネル登録しました
Pythonはパスの指定が出来てないからライブラリの更新が( ゚д゚)ハッ!
これからの更新楽しみにしていますね( ´ ▽ ` )
チャンネル登録ありがとうございます😊
これからも動画UPしていくので、応援よろしくお願いします!!
いつも分かりやすい動画ありがたいです!
widgetの部品の中で、selfを付けるものと付けないものの違いがよく理解できないのですが、お時間あれば教えてください。
ご質問ありがとうございます😊
他のメソッド(クラスの中の関数)からも呼び出して使いたい場合はselfを付ける必要があります!クラスの「self」については、クラスの解説動画で詳しく説明しているので、よければ見てみてください😉
クラス解説動画 ▶︎ ua-cam.com/video/XMDWpPZkRCc/v-deo.html
@@pythonvtuber9917 他のメソッドから呼び出したいときにselfをつけるんですね。なるほど、もう一度動画見直してみます!ありがとうございました✨
Tkinterって流行るんかな
blenderくらいしか知らない
流行るってことはないですね!また流行ってるってこともないですね😉
もう少しゆっくり話して欲しいです
ご意見、ありがとうございます!話すスピードについても考えてみますね😉
倍速すればいいと思う
質問失礼します。
import tkinter
class Application(tkinter.Frame):
def __init__(self,root=None):
super().__init__(root,width=380,height=280,
borderwidth=1,relief='groove')
self.root = root
self.pack()
self.pack_propagate(0)
self.create_widgets()
def create_widgets(self):
quit_btn = tkinter.Button(self)
quit_btn['text'] = '閉じる'
quit_btn['command'] = self.root.destroy
quit_btn.pack(side='bottom')
root = tkinter.Tk()
root.title('サプーアプリ')
root.geometry('400x300')
root.mainloop()
app = Application(root=root)
app.mainloop()
これを記入し実行したのですが閉じるボタンが表示されませんでした。
誤りがあるのでしょうか
宜しくお願いします。
ご質問ありがとうございます!
root.mainloop()を削除したら表示されるかと思います。
動画ありがとうございます。
サプーさんと同じコード入力したのですがエラーが出てしまいました・・
↓このように表示されてしまいます。
C:\Users\ymats\AppData\Local\Programs\Python\Python310\python.exe C:/Users/ymats/AppData/Roaming/JetBrains/PyCharmCE2022.2/scratches/Tkinter.py
Traceback (most recent call last):
File "C:\Users\ymats\AppData\Roaming\JetBrains\PyCharmCE2022.2\scratches\Tkinter.py", line 20, in
app = Application(root=root)
File "C:\Users\ymats\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 3153, in __init__
Widget.__init__(self, master, 'frame', cnf, {}, extra)
File "C:\Users\ymats\AppData\Local\Programs\Python\Python310\lib\tkinter\__init__.py", line 2601, in __init__
self.tk.call(
_tkinter.TclError: unknown option "-root"
何か解決法はありますでしょうか。。?
ご質問ありがとうございます!
実行ファイルを「Tkinter.py」としているのですかね?ファイル名をscript_1.pyなどライブラリ名と被らない名前で実行してみてください!
Pythonではファイル名や関数名・変数名が、予約語やライブラリ名などと被っているとエラーとなります。
最後の"3. Excelファイルにデータを1つ書き込むアプリのコード”のところで、
”Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\tkinter\__init__.py", line 1892, in __call__
return self.func(*args)
File "c:\Users\user\OneDrive\デスクトップ\Tkinter\Practice_Tkinter.py", line 41, in save_data
wb = openpyxl.load_workbook(file_name)
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl
eader\excel.py", line 315, in load_workbook
reader = ExcelReader(filename, read_only, keep_vba,
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl
eader\excel.py", line 124, in __init__
self.archive = _validate_archive(fn)
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\site-packages\openpyxl
eader\excel.py", line 96, in _validate_archive
archive = ZipFile(filename, 'r')
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\zipfile.py", line 1257, in __init__
self._RealGetContents()
File "C:\Users\user\AppData\Local\Programs\Python\Python39\lib\zipfile.py", line 1324, in _RealGetContents
raise BadZipFile("File is not a zip file")
zipfile.BadZipFile: File is not a zip file
”
こんな感じのエラーみたいなのが出てデータが保存されないです。
ご指摘、お願いします。。。
ご質問ありがとうございます!
エラー文からはzipファイルが扱われているように見受けられますが、Excelファイルがzip形式になっていませんかね?また、トレースバックを見るとOneDrive上のファイルを扱っているように見受けられますが、OneDriveでもローカルファイルと同じように扱えるのか検証できておらず...一度ローカルディレクトリで実施してみてください😉
また、エラー解消に関する動画も出しているので合わせてご覧ください!
▶︎ ua-cam.com/video/n-CEndcgAFY/v-deo.html
@@pythonvtuber9917 ご指摘ありがとうございます。原因が分かりました。エクセルファイルをVScodeで拡張子だけで設定していたためでした!!前もって作ったエクセルファイルだと実行できました。あとローカルディレクトリでも稼働可能でした!!!