Go Back   openSUSE Forums > Programming/Scripting
Forums FAQ Members List Search Today's Posts Mark Forums Read


Programming/Scripting Questions about programming, bash scripts, perl, php, cron jobs, ruby, python, etc.

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 07-Sep-2009, 21:07
Student Penguin
 
Join Date: Jul 2009
Posts: 74
nipunreddevil hasn't been rated much yet
Default PyGTK problem

I need from this code that var1,var2,var3,var4 should be continuosly read from file(or serial port) and there value be updated continuosly.Also i wish to use these 4 variables for plotting in pygame/matplotlib/VPython .How can i do that.Moreover for every read cycle there has to be a write cycle on to a file(or serial port) and the user must be able to set this value via an entry.have not been able to figure out all this.Moreover with my code i am able to presently display updated information on a button click(where as i wanna use button just to start things of)
Code:
#!/usr/bin/env python

#This program will attempt to read a line from a file using a GUI

import pygtk
pygtk.require('2.0')
import gtk
import re
import time


class Nipun:

	
	f=open('/home/nipun/1.txt')
	vars = re.compile('^(\d+\.?\d*)a(\d+\.?\d*)b(\d+\.?\d*)c(\d+\.?\d*)d(.*)')
	
	def __init__(self):
		self.window=gtk.Window(gtk.WINDOW_TOPLEVEL)
		self.window.set_title("File read GUI Label")
		self.window.connect("delete_event",self.delete_event)
		self.window.set_border_width(10)
		self.box2=gtk.VBox(False,0)
		self.window.add(self.box2)
		self.button=gtk.Button("Read")
		self.button.connect("clicked",self.callback)
		self.box2.pack_start(self.button,True,True,0)
		self.button.show()
		self.label1=gtk.Label()
		self.label2=gtk.Label()
		self.label3=gtk.Label()
		self.label4=gtk.Label()
		self.label5=gtk.Label("A")
		self.label6=gtk.Label("B")
		self.label7=gtk.Label("C")
		self.label8=gtk.Label("D")
		self.box2.pack_start(self.label5,True,True,0)
		self.box2.pack_start(self.label1,True,True,0)
		self.box2.pack_start(self.label6,True,True,0)
		self.box2.pack_start(self.label2,True,True,0)
		self.box2.pack_start(self.label7,True,True,0)
		self.box2.pack_start(self.label3,True,True,0)
		self.box2.pack_start(self.label8,True,True,0)
		self.box2.pack_start(self.label4,True,True,0)
		self.label1.show()
		self.label2.show()
		self.label3.show()
		self.label4.show()
		self.label5.show()
		self.label6.show()
		self.label7.show()
		self.label8.show()
		self.box2.show()
		self.window.show()
				

	def delete_event(self,widget,event,data=None):
		print "Delete event has occcured"
		gtk.main_quit()
		return False


	def callback(self,widget,data=None):
		print "alpha"
		s=hello.f.readline()
		m = re.search(hello.vars, s) # Run the regexp on the packet
		var1 = m.group(1) # take out the values
		var2 = m.group(2)
		var3 = m.group(3)
		var4 = m.group(4)
		hello.label1.set_text(var1)
		hello.label2.set_text(var2)
		hello.label3.set_text(var3)
		hello.label4.set_text(var4)
		

	def main(self):
		gtk.main()
if __name__=="__main__":
		hello=Nipun()
		hello.main()
Contents of 1.txt are:
Code:
100a45.787b89c70d
7a45b98c7d
5a3b5c4d
6a5b5c8d
5a9b4c5d
6a5b5c4d
Reply With Quote
Reply

Bookmarks


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On




 

Search Engine Friendly URLs by vBSEO 3.3.0 RC2