#!/usr/bin/env python
# example pixmap.py
import pygtk
pygtk.require('2.0')
import gtk
# XPM data of Open-File icon
#從內存生成的圖像數據
xpm_data = [
"10 12 4 1",
" c Green",
". c Red",
"X c Blue",
"Y c #00000FFFFFF",
"XXXXXXXXXX",
" XXXXXXXX ",
" XXXXXX ",
" YYYY ",
" YY ",
" YY ",
" YY ",
" YY ",
"..........",
"..........",
"..........",
".........."
]
class PixmapExample:
# when invoked (via signal delete_event), terminates the application.
def close_application(self, widget, event, data=None):
gtk.main_quit()
return False
# is invoked when the button is clicked. It just prints a message.
def button_clicked(self, widget, data=None):
print "button clicked"
def __init__(self):
#create the main window, and attach delete_event signal to terminating
# the application
window = gtk.Window(gtk.WINDOW_TOPLEVEL)
window.connect("delete_event", self.close_application)
window.set_border_width(10)
window.show()
# now for the pixmap from XPM data
#從內存生成的圖像數據中讀取
#pixmap, mask = gtk.gdk.pixmap_create_from_xpm_d(window, transparent_color,data)
pixmap, mask = gtk.gdk.pixmap_create_from_xpm_d(window.window,
None,
xpm_data)
# an image widget to contain the pixmap
image = gtk.Image()
image.set_from_pixmap(pixmap, mask)
image.show()
# a button to contain the image widget
button = gtk.Button()
button.add(image)
window.add(button)
button.show()
button.connect("clicked", self.button_clicked)
def main():
gtk.main()
return 0
if __name__ == "__main__":
PixmapExample()
main()
?
?
XPM格式說明:
xpm_data = [
"10 12 4 1",
"? c Green",
". c Red",
"X c Blue",
"Y c #00000FFFFFF",
"XXXXXXXXXX",
" XXXXXXXX ",
"? XXXXXX? ",
"?? YYYY?? ",
"??? YY??? ",
"??? YY??? ",
"??? YY??? ",
"??? YY??? ",
"..........",
"..........",
"..........",
".........."
]
?
"10 12 4 1",其中10表示象素寬度,12表示象素高度,4表示色彩種類,最后一個數字說明的是每個字母當作各個顏色的標記
下面4行就是每個字符代表的色彩
再下面的10列12行的字符表示圖像的每個像素
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

