<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-2">
<META content="MSHTML 6.00.2900.3059" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Ok, takže nakonec mi s tím poradili na DaniWebu, 
ale mám další problém. Toto je kod:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>##do vstupu se zadavaji 4 cisla jako souradnice 
cary...<BR>class Canvas:<BR>&nbsp;&nbsp;&nbsp; def 
__init__(self,parent):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.okno=parent<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.okno.SetBackgroundColour("#FCFCFE")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic = 
wx.FlexGridSizer(2,2,0,0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.canvas = wx.ScrolledWindow(self.okno, 
-1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.canvas.EnableScrolling(True, 
True)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.P_WIDTH = 
1000<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.P_HEIGHT = 
1000<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.canvas.SetScrollbars(20, 
20, self.P_WIDTH/20, self.P_HEIGHT/20)</FONT></DIV>
<DIV>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.Add(self.canvas, 1, 
wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.Add((0,0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer=wx.BoxSizer(wx.VERTICAL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.Add(sizer, 1, 
wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.Add((0,0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.AddGrowableRow(0, 1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.radic.AddGrowableCol(0, 1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer2=wx.BoxSizer(wx.HORIZONTAL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer2.Add(wx.StaticText(self.okno,label="&nbsp; f(y)=&nbsp;&nbsp; 
"),0,wx.ALIGN_CENTER)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.vstup=wx.TextCtrl(self.okno)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer2.Add(self.vstup,1,0,wx.ALL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer.Add(sizer2,0,wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer3=wx.BoxSizer(wx.HORIZONTAL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
button1=wx.Button(self.okno,label="Vykresli")<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer3.Add(button1,0,wx.ALIGN_RIGHT)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
sizer.Add(sizer3,0,wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
##<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.canvas.SetCursor(wx.CROSS_CURSOR)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.canvas.Bind(wx.EVT_PAINT, 
self.OnPaint)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.okno.SetSizer(self.radic)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
button1.Bind(wx.EVT_BUTTON,lambda 
e:self.vykresli())<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.body=[(0,0,0,0)]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.pocet=0<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc=False<BR>&nbsp;&nbsp;&nbsp; def 
vykresli(self):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
l=[]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; for prvek in 
self.vstup.GetValue().split(','):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
l.append(int(prvek))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.body=l<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.BeginDrawing()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.DrawLineList([l])<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.EndDrawing()<BR>&nbsp;&nbsp;&nbsp; def OnPaint(self, 
evt):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc=wx.PaintDC(self.canvas)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.BeginDrawing()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.DrawLineList(self.body)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
self.dc.EndDrawing()<BR>if __name__ == "__main__":<BR>&nbsp;&nbsp;&nbsp; okno = 
wx.App(0)<BR>&nbsp;&nbsp;&nbsp; 
parent=wx.MDIParentFrame(None,size=wx.Size(500,500))<BR>&nbsp;&nbsp;&nbsp; 
child=wx.MDIChildFrame(parent,title="Graf",id=-1)<BR>&nbsp;&nbsp;&nbsp; 
Canvas(child)<BR>&nbsp;&nbsp;&nbsp; child.Maximize()<BR>&nbsp;&nbsp;&nbsp; 
parent.Show()<BR>&nbsp;&nbsp;&nbsp; okno.MainLoop()</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Do vstupuse zadavají čtyři čísla oddělené čárkou. 
Tato čísla reprezentují souřadnice čáry, která by se po stisknutí tlačítka 
vykreslit. Čára se vykreslí, ale pak mi to začne házet chyby kterým nerozumím 
atd. Jak to opravit tak, aby se čára vykreslila a zůstala tam i po skrolování. 
</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<DIV><FONT face=Arial size=2>Děkuji</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=jakohv@seznam.cz href="mailto:jakohv@seznam.cz">Jakub Vojacek</A> 
  </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=python@py.cz 
  href="mailto:python@py.cz">Konference PyCZ</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Saturday, March 24, 2007 12:54 
  PM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> [python] Scrolled WxCanvas</DIV>
  <DIV><BR></DIV>
  <DIV><FONT face=Arial size=2>Ahoj</FONT></DIV>
  <DIV><FONT face=Arial size=2></FONT>&nbsp;</DIV>
  <DIV><FONT face=Arial size=2>Snažim se udělat jednoduchou tvarbu grafů ve Wx. 
  Ale mám potáže se scrollbary</FONT></DIV>
  <DIV><FONT face=Arial size=2>Zatím jsem udělal toto:</FONT></DIV>
  <DIV><FONT face=Arial size=2>import wx<BR>class Canvas:<BR>&nbsp;&nbsp;&nbsp; 
  def __init__(self,parent):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.okno=parent<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.radic = 
  wx.FlexGridSizer(3,2,0,0)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.canvas = wx.Window(self.okno, 
  -1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.sb_vert = 
  wx.ScrollBar(self.okno, -1, 
  style=wx.SB_VERTICAL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.sb_vert.SetScrollbar(0,1000,1000,1000)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.sb_hor = wx.ScrollBar(self.okno, -1, 
  style=wx.SB_HORIZONTAL)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.sb_hor.SetScrollbar(0,1000,1000,1000)</FONT></DIV>
  <DIV>&nbsp;</DIV>
  <DIV><FONT face=Arial size=2>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.radic.Add(self.canvas, 1, 
  wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.radic.Add(self.sb_vert, 0, 
  wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.radic.Add(self.sb_hor, 0, 
  wx.EXPAND)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.radic.Add((0,0))<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  <BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.radic.AddGrowableRow(0, 
  1)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; self.radic.AddGrowableCol(0, 
  1)</FONT></DIV>
  <DIV>&nbsp;</DIV><FONT face=Arial size=2>
  <DIV><BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.canvas.SetCursor(wx.CROSS_CURSOR)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.canvas.Bind(wx.EVT_PAINT, 
  self.OnPaint)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.okno.SetSizer(self.radic)<BR>&nbsp;&nbsp;&nbsp; def 
  vykresli_graf(self,dc):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  dc.BeginDrawing()<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  lines=[(-50,-50,50,50)]<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  dc.DrawLineList(lines)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  dc.EndDrawing()<BR>&nbsp;&nbsp;&nbsp; def OnPaint(self, 
  evt):<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; dc = 
  wx.PaintDC(self.canvas)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
  self.vykresli_graf(dc)<BR>if __name__ == "__main__":<BR>&nbsp;&nbsp;&nbsp; 
  okno = wx.App(0)<BR>&nbsp;&nbsp;&nbsp; 
  parent=wx.MDIParentFrame(None,size=wx.Size(500,500))<BR>&nbsp;&nbsp;&nbsp; 
  child=wx.MDIChildFrame(parent,title="Graf",id=-1)<BR>&nbsp;&nbsp;&nbsp; 
  Canvas(child)<BR>&nbsp;&nbsp;&nbsp; child.Maximize()<BR>&nbsp;&nbsp;&nbsp; 
  parent.Show()<BR>&nbsp;&nbsp;&nbsp; okno.MainLoop()<BR></DIV>
  <DIV>ale i když je část tý čáry mimoviditelnou část canvasu, scrollbar se 
  nezmění. chtělo by to jako je v Tk:</DIV>
  <DIV>canvas["yscrollcommand"] = S.set</DIV>
  <DIV>Nelze to nějak nastavit??</DIV>
  <DIV>Dík</DIV></FONT>
  <P>
  <HR>

  <P></P>_______________________________________________<BR>Python mailing 
  list<BR>Python@py.cz<BR>http://www.py.cz/mailman/listinfo/python</BLOCKQUOTE></BODY></HTML>