簡體   English   中英

使用 Tkinter 創建按鈕

[英]Creating a button using Tkinter

我附上了我正在修改的部分代碼。 我想使用 Tkinter 創建一個按鈕,以便根據我使用按鈕(A 或 B)選擇的選項,我想調整cv_image = image[:,:,:]行中的圖像大小。

做這個的最好方式是什么。 提前致謝。

class image_converter:

  def __init__(self):
    print 'show window'
    cv2.namedWindow("Image window", 1)
    print 'start bridge and subscribe'
    self.bridge = CvBridge()
    print Image
    self.image_sub = rospy.Subscriber("/MDS_CamServer/camera/image",Image,self.callback)
    self.save = False;
    self.count=0;
    self.X=np.array([[]]);
    self.y=np.array([[]]);
    self.X_new=np.array([[]]);
    self.y_new=np.array([[]]);

  def callback(self,data):
    try:
      image = self.bridge.imgmsg_to_cv2(data, "bgr8")
    except CvBridgeError, e:
      print e

    cv_image = image[:,:,:];


def main(args):
  ic = image_converter()
  rospy.init_node('image_converter', anonymous=True)
  try:
    rospy.spin()
  except KeyboardInterrupt:
    print "Shutting down"
  cv2.destroyAllWindows()

if __name__ == '__main__':
    main(sys.argv)

您應該創建一個單選按鈕來選擇用戶想要選擇 A 或 B 的選項,然后選擇將用戶重定向到特定寬度

你可以試試這個代碼片段

self.v1 = IntVar()
Label(master, text="""resize the image in the line with """,justify = LEFT, padx = 20).pack()
Radiobutton(master, text="A",padx = 20, variable=self.v1, value=1).pack(anchor=W)
Radiobutton(master, text="B", padx = 20, variable=self.v1, value=2).pack(anchor=W)
if self.v2.get() == 1:
   Imgwidth = 100 #specify it as per A
else:
   Imgwidth = 200 #specify it as per B
Imgheight = 100#just specify or use original 
image = Image.open(Image_Location)
image = image.resize((Imgheight, Imgwidth), Image.ANTIALIAS) #The (250, 250) is (height, width)
self.pw.pic = ImageTk.PhotoImage(image)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM