2012/09/24(月) [n年前の日記]
#1 [python] ツールバー用のアイコン画像を作成
ここ数日 PyQt を勉強中なのだけど、ツールバー用のアイコン画像に、
_Open Icon Library
のアイコン画像を使わせてもらっていたわけで。この Open Icon Library のアイコン画像群、
_ライセンス毎に分類した圧縮ファイルが用意
されていてありがたい。今回は GPL と Public Domain のアイコン画像をDLさせてもらったり。
しかし、足りないアイコンが出てきてしまって。仕方ないので自分で描いてるうちに、他のアイコン画像と絵柄が一致してないのが気になって。結局、EDGE2を起動して全部自分で描いてしまった。
こんな感じ。
_ツールバー用自作アイコン画像のzip
Public Domain ってことで。24x24ドットです。
Qt Designer でツールバーを追加すると、初期状態は24x24ドットだったので、そのサイズで作ってしまったけれど。なんだかサイズが大き過ぎるような気も。ツールバーのアイコンって一般的には何x何ドットなのだろう…。
しかし、足りないアイコンが出てきてしまって。仕方ないので自分で描いてるうちに、他のアイコン画像と絵柄が一致してないのが気になって。結局、EDGE2を起動して全部自分で描いてしまった。
こんな感じ。
_ツールバー用自作アイコン画像のzip
Public Domain ってことで。24x24ドットです。
Qt Designer でツールバーを追加すると、初期状態は24x24ドットだったので、そのサイズで作ってしまったけれど。なんだかサイズが大き過ぎるような気も。ツールバーのアイコンって一般的には何x何ドットなのだろう…。
◎ pythonでcsvファイル読み込み。 :
import csv で色々できるらしい。
_csv - カンマ区切りのファイル - Python Module of the Week
_13.1. csv - CSV ファイルの読み書き - Python 2.7ja1 documentation
あっさり読めた。素晴らしい。と思ったが、csvファイル中の「\n」が、「\n」のままで改行にならない…。
csvファイル中の文字列中に改行を入れたいなら、文字列を「"」で挟んで、実際に改行を入れてしまえばいいらしい。
_ダブルクォーテーション 「"」を扱う | MEMO-LOG
_CSV ファイルに関する個人的メモ
Python の csvモジュールでは、改行も、「""」も、どちらも正しく読み取ってくれた。ただ、日本語文字列では試してない。
_csv - カンマ区切りのファイル - Python Module of the Week
_13.1. csv - CSV ファイルの読み書き - Python 2.7ja1 documentation
あっさり読めた。素晴らしい。と思ったが、csvファイル中の「\n」が、「\n」のままで改行にならない…。
csvファイル中の文字列中に改行を入れたいなら、文字列を「"」で挟んで、実際に改行を入れてしまえばいいらしい。
"idlink","[Text] [ID] [ID]: URL ""Opt Title"""また、「"」で挟んだ文字列中に「"」を入れたい場合は、「""」と書くことで「"」を含ませることができるらしい。
_ダブルクォーテーション 「"」を扱う | MEMO-LOG
_CSV ファイルに関する個人的メモ
Python の csvモジュールでは、改行も、「""」も、どちらも正しく読み取ってくれた。ただ、日本語文字列では試してない。
◎ pythonのwithがよく分からない。 :
csv モジュールのサンプルを見ていて、with って何だろうと。エラー処理と関係あるらしいのだけど…。
_python2.6からwith文つかえる! - $ tail -f /var/log/yamaneko
実際にエラーが出るようにして動作確認。
open() で使ってる事例しか見かけなかったので、 codecs.open() では使えないのかなと不安になったが、使ってる事例を見かけて安心。with を使うように自分も修正したり。
_ユニコード文字列を含むファイルの読み書きにはcodecsを使う - AtAsAtAmAtArA
_python2.6からwith文つかえる! - $ tail -f /var/log/yamaneko
実際にエラーが出るようにして動作確認。
except IOError, inst: sys.stderr.write (str (inst) + '\n')IOError が発生した際に、inst にエラー種類が入ってくれるらしい。
open() で使ってる事例しか見かけなかったので、 codecs.open() では使えないのかなと不安になったが、使ってる事例を見かけて安心。with を使うように自分も修正したり。
_ユニコード文字列を含むファイルの読み書きにはcodecsを使う - AtAsAtAmAtArA
◎ Aboutダイアログの表示。 :
ヘルプ→aboutを選んだ際に、どうやって、何のダイアログを表示すればいいのか分からなかったけど。とりあえず、QMessageBox でどうにか。
いや、やはり一般的には、QMessageBox.about() を使うっぽい。
_PySideSimplicissimus_Module_5_Combine_Japanese | Qt Wiki | Qt Developer Network
PySide の事例だけど、なんだかそれらしい文字列を表示しているような。
def display_about(self): """Aboutダイアログを表示""" s = "%s\n%s" % (WDW_TITLE_DEF, VER) QtGui.QMessageBox.information(self, "About", s, QtGui.QMessageBox.Ok)_QMessageBox Class Reference を眺めると、QMessageBox.about() てのもあるみたいなのだけど。表示してみたら、何か違う感じ…。
いや、やはり一般的には、QMessageBox.about() を使うっぽい。
_PySideSimplicissimus_Module_5_Combine_Japanese | Qt Wiki | Qt Developer Network
PySide の事例だけど、なんだかそれらしい文字列を表示しているような。
◎ 2017/03/19追記。 :
Dropboxのpublicフォルダが死んだのでファイルの置き場所を変更。
[ ツッコむ ]
以上です。