Blame platform-demos/el/grid.py.page

Packit 1470ea
Packit 1470ea
<page xmlns="http://projectmallard.org/1.0/" xmlns:its="http://www.w3.org/2005/11/its" xmlns:xi="http://www.w3.org/2001/XInclude" type="guide" style="task" id="grid.py" xml:lang="el">
Packit 1470ea
  <info>
Packit 1470ea
    <title type="text">Πλέγμα (Python)</title>
Packit 1470ea
    <link type="guide" xref="beginner.py#layout"/>
Packit 1470ea
    <link type="seealso" xref="label.py"/>
Packit 1470ea
    <link type="next" xref="separator.py"/>
Packit 1470ea
    <revision version="0.2" date="2012-08-01" status="stub"/>
Packit 1470ea
Packit 1470ea
    <credit type="author copyright">
Packit 1470ea
      <name>Tiffany Antopolski</name>
Packit 1470ea
      <email its:translate="no">tiffany.antopolski@gmail.com</email>
Packit 1470ea
      <years>2012</years>
Packit 1470ea
    </credit>
Packit 1470ea
Packit 1470ea
    <credit type="author copyright">
Packit 1470ea
      <name>Marta Maria Casetti</name>
Packit 1470ea
      <email its:translate="no">mmcasetti@gmail.com</email>
Packit 1470ea
      <years>2012</years>
Packit 1470ea
    </credit>
Packit 1470ea
Packit 1470ea
    <desc>Πακετάρισμα γραφικών στοιχείων σε γραμμές και στήλες</desc>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Ελληνική μεταφραστική ομάδα GNOME</mal:name>
Packit 1470ea
      <mal:email>team@gnome.gr</mal:email>
Packit 1470ea
      <mal:years>2012-2015</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Δημήτρης Σπίγγος</mal:name>
Packit 1470ea
      <mal:email>dmtrs32@gmail.com</mal:email>
Packit 1470ea
      <mal:years>2012, 2013</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Μαρία Θουκιδίδου</mal:name>
Packit 1470ea
      <mal:email>marablack3@gmail.com</mal:email>
Packit 1470ea
      <mal:years>2014</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  
Packit 1470ea
    <mal:credit xmlns:mal="http://projectmallard.org/1.0/" type="translator copyright">
Packit 1470ea
      <mal:name>Θάνος Τρυφωνίδης</mal:name>
Packit 1470ea
      <mal:email>tomtryf@gmail.com</mal:email>
Packit 1470ea
      <mal:years>2014, 2015</mal:years>
Packit 1470ea
    </mal:credit>
Packit 1470ea
  </info>
Packit 1470ea
Packit 1470ea
  <title>Πλέγμα</title>
Packit 1470ea
Packit 1470ea
  <media type="image" mime="image/png" src="media/grid_simple.png"/>
Packit 1470ea
  

Μερικές ετικέτες σε ένα πλέγμα.

Packit 1470ea
Packit 1470ea
  <links type="section"/>
Packit 1470ea
Packit 1470ea
  <section id="code">
Packit 1470ea
    <title>Ο χρησιμοποιούμενος κώδικας για παραγωγή αυτού παραδείγματος</title>
Packit 1470ea
    from gi.repository import Gtk
Packit 1470ea
import sys
Packit 1470ea
Packit 1470ea
Packit 1470ea
class MyWindow(Gtk.ApplicationWindow):
Packit 1470ea
Packit 1470ea
    def __init__(self, app):
Packit 1470ea
        Gtk.Window.__init__(self, title="Grid Example", application=app)
Packit 1470ea
Packit 1470ea
        # three labels
Packit 1470ea
        label_top_left = Gtk.Label(label="This is Top Left")
Packit 1470ea
        label_top_right = Gtk.Label(label="This is Top Right")
Packit 1470ea
        label_bottom = Gtk.Label(label="This is Bottom")
Packit 1470ea
Packit 1470ea
        # a grid
Packit 1470ea
        grid = Gtk.Grid()
Packit 1470ea
Packit 1470ea
        # some space between the columns of the grid
Packit 1470ea
        grid.set_column_spacing(20)
Packit 1470ea
Packit 1470ea
        # in the grid:
Packit 1470ea
        # attach the first label in the top left corner
Packit 1470ea
        grid.attach(label_top_left, 0, 0, 1, 1)
Packit 1470ea
        # attach the second label
Packit 1470ea
        grid.attach(label_top_right, 1, 0, 1, 1)
Packit 1470ea
        # attach the third label below the first label
Packit 1470ea
        grid.attach_next_to(
Packit 1470ea
            label_bottom, label_top_left, Gtk.PositionType.BOTTOM, 2, 1)
Packit 1470ea
Packit 1470ea
        # add the grid to the window
Packit 1470ea
        self.add(grid)
Packit 1470ea
Packit 1470ea
Packit 1470ea
class MyApplication(Gtk.Application):
Packit 1470ea
Packit 1470ea
    def __init__(self):
Packit 1470ea
        Gtk.Application.__init__(self)
Packit 1470ea
Packit 1470ea
    def do_activate(self):
Packit 1470ea
        win = MyWindow(self)
Packit 1470ea
        win.show_all()
Packit 1470ea
Packit 1470ea
app = MyApplication()
Packit 1470ea
exit_status = app.run(sys.argv)
Packit 1470ea
sys.exit(exit_status)
Packit 1470ea
Packit 1470ea
  </section>
Packit 1470ea
Packit 1470ea
  <section id="methods">
Packit 1470ea
    <title>Χρήσιμες μέθοδοι για ένα γραφικό στοιχείο πλέγματος</title>
Packit 1470ea
Packit 1470ea
    <list>
Packit 1470ea
      <item>

Για να προσαρτήσετε ένα child γραφικό στοιχείο σε θέση left, top σε μια υποδοχή του δοσμένου width, height χρησιμοποιήστε attach(child, top, left, width, height). Εάν ένα sibling γραφικό στοιχείο είναι ήδη στη θέση, μπορούμε να χρησιμοποιήσουμε επίσης attach_next_to(child, sibling, side, width, height), όπου side είναι ένα από τα Gtk.PositionType.LEFT, Gtk.PositionType.RIGHT, Gtk.PositionType.TOP, Gtk.PositionType.BOTTOM.

</item>
Packit 1470ea
      <item>

insert_row(position) και insert_column(position) κάνουν ακριβώς ότι λένε· τα θυγατρικά που προσαρτώνται σε αυτή τη θέση ή από κάτω της μετακινούνται μια γραμμή κάτω και τα θυγατρικά που καλύπτουν κατά μήκος αυτή τη θέση επεκτείνονται για να καλύψουν τη νέα γραμμή. insert_next_to(sibling, side) εισάγει μια γραμμή ή στήλη στη συγκεκριμένη θέση. Η νέα γραμμή ή στήλη τοποθετείται δίπλα στο sibling, στην πλευρά που ορίστηκε από side; εάν η πλευρά είναι Gtk.PositionType.TOP ή Gtk.PositionType.BOTTOM, εισάγεται μια γραμμή, εάν η πλευρά είναι Gtk.PositionType.LEFT του Gtk.PositionType.RIGHT, εισάγεται μια στήλη.

</item>
Packit 1470ea
      <item>

set_row_homogeneous(True) και set_column_homogeneous(True) βεβαιώνουν ότι (αντίστοιχα) κάθε γραμμή ή στήλη έχει το ίδιο πλάτος ή ύψος.

</item>
Packit 1470ea
      <item>

set_row_spacing(spacing) και set_column_spacing(spacing) εξαναγκάζουν ένα διάκενο μεταξύ (αντίστοιχα) γραμμών ή στηλών. Η τιμή του spacing μπορεί να είναι μεταξύ 0, που είναι η προεπιλεγμένη τιμή και 32767.

</item>
Packit 1470ea
    </list>
Packit 1470ea
Packit 1470ea
  </section>
Packit 1470ea
Packit 1470ea
  <section id="references">
Packit 1470ea
    <title>Αναφορές API</title>
Packit 1470ea
    

Σε αυτό το παράδειγμα χρησιμοποιήσαμε τα παρακάτω:

Packit 1470ea
    <list>
Packit 1470ea
      <item>

<link href="http://developer.gnome.org/gtk3/unstable/GtkApplication.html">GtkApplication</link>

</item>
Packit 1470ea
      <item>

<link href="http://developer.gnome.org/gtk3/unstable/GtkApplicationWindow.html">GtkApplicationWindow</link>

</item>
Packit 1470ea
      <item>

<link href="http://developer.gnome.org/gtk3/unstable/GtkLabel.html">GtkLabel</link>

</item>
Packit 1470ea
      <item>

<link href="http://developer.gnome.org/gtk3/unstable/GtkImage.html">GtkImage</link>

</item>
Packit 1470ea
      <item>

<link href="http://developer.gnome.org/gtk3/unstable/GtkGrid.html">GtkGrid</link>

</item>
Packit 1470ea
    </list>
Packit 1470ea
  </section>
Packit 1470ea
</page>