質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

476閲覧

wxpythonでフォルダ内画像を表示する際のエラー

machu_purple

総合スコア6

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2019/10/09 02:08

前提・実現したいこと

ここに質問の内容を詳しく書いてください。
フォルダ内にあるjpg画像をボタンを押すと表示するようにしたい。

発生している問題・エラーメッセージ

argument 1 has unexpected type 'JpegImageFile'

該当のソースコード

python
class MyApp(wx.PySimpleApp):
def OnInit(self):
panel_x=800
panel_y=800
size_x=384
size_y=288
width, height = panel_x, panel_y
self.Frm = wx.Frame(None, -1, "画像", size=wx.Size(width, height))

sizer = wx.BoxSizer(wx.HORIZONTAL) self.Frm.SetSizer(sizer) changeBtn = wx.Button(self.Frm, -1, "t+1") self.Bind(wx.EVT_BUTTON, self.OnButtonPush, changeBtn) self.count = 0 bmp = wx.EmptyBitmap(size_x,size_y) self.bmpFlag = wx.StaticBitmap(self.Frm, -1, bmp) sizer.Add(changeBtn, 0, wx.CENTER|wx.ALL, 10) sizer.Add(self.bmpFlag, 0, wx.CENTER|wx.ALL, 10) self.Frm.Show() return True def OnButtonPush(self, evt): self.count += 1 imgfile_format='jpg' wd_TH4="F:/thermo/TH4-2/img_TH4-2/" target_TH4=wd_TH4+'*.'+imgfile_format files_TH4 = glob.glob(target_TH4) len_TH4_name=len(files_TH4[0]) st_let=31 en_let=1 st_let2=len_TH4_name-st_let+1 en_let2=len_TH4_name-en_let+1 for i in range(len(files_TH4)): file_name=files_TH4[i][st_let2:en_let2] self.img_TH4=Image.open(file_name) self.bmpFlag.SetBitmap(self.img_TH4)

app = MyApp()
app.MainLoop()

bmp,pngファイルでも試したが、エラーが'JpegImageFile'から'BmpImageFile'などに変わるだけだった ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

Python

1 self.img_TH4=Image.open(file_name)

の部分を

Python

1 self.img_TH4=wx.Bitmap(file_name) 2

にすればできるのではと思います。PILのオブジェクトでなくwxのオブジェクトを指定しましょう。

投稿2019/10/09 12:28

nomuken

総合スコア1627

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

machu_purple

2019/10/09 13:32

ありがとうございます!やってみたら他の間違いもありましたが動きました。 助かります。この後も作り続けられます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問