Gå til innhold

Nybegynner: div, feil med box packing(PyGTK)


Anbefalte innlegg

Hei

 

Jeg har nettopp begynt å lese på Python/PyGTK, og kommer nok å spørre en del "dumme" spørsmål her i framtiden :)

 

Akkiurat nå prøvde jeg meg på å lage et lite test program angåede GTK layout.

Etter å ha lest dette kapittelet over hos pygtk.org har jeg kommet opp med denne koden:

 

#!/usr/bin/env python

# testLayout.py

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

def make_box(homogeneous, spacing, expand, fill, padding):
   box = gtk.HBox(homogeneous, spacing)

   button = gtk.Button("Test")
   box.pack_start(button, expand, fill, padding)
   button.show()

   return box

class testLayout:

   def delete_event(self, widget, event, data=None):
         gtk.main_quit()
   return False
    
def __init__(self):
   # create new window!
   self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
   self.window.connect("delete_event", self.delete_event)
   
         box1 = make_box(False, 0, False, False, 0)
  box1.show()
   
  self.window.add(box1)
  self.window.show()
 
def main():
 gtk.main()
  return 0

Men jeg får en feilmelding når jeg prøver å kjøre denne koden:

$ python testLayout.py

  File "testLayout.py", line 29

    box1 = make_box(False, 0, False, False, 0)

                                            ^

IndentationError: unindent does not match any outer indentation level

Hva er galt? Skjønte ikke mye av den feilmelding, og google hadde heller ingen vettuge tips.

Takker for alle svar!

Lenke til kommentar
Videoannonse
Annonse

du er nødt til å skaffe deg et IDE for Python. du aner ikke hva du går glipp av! jeg bruker kun språk som har en REPL (interaktive @ runtime) nå - og kommer aldri til å gå tilbake til noe annet. denne biten går du glipp av når du bruker python på denne "gammle måten" (som i språk som C/C++, Java o.s.v....... :)

 

det finnes sikkert flere IDEer som passer til Python, men jeg bruker emacs - så her er en kort artikkel om hvordan man bruker python & emacs:

http://nostdal.org/wiki/index.php/Getting_...ted_with_Python

 

..så til det du egentlig spurte om..

 

feilen er en vanlig indenteringsfeil, om du ser så ligger linjen "box1 = make_box(False, 0, False, False, 0)" litt annerledes enn de andre.

 

Edit:

her ser du programmet ditt kjører:

http://nostdal.org/~lars/Skjermdump-2.png

Endret av dayslepr
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...