einfache, simple Ausgabe --> WIE?

Plattformunabhängige GUIs mit wxWidgets.
Antworten
qweet
User
Beiträge: 119
Registriert: Freitag 2. September 2005, 21:26

Samstag 1. Oktober 2005, 21:15

Hallo,

nachdem ich das Tutorial von wxPython überflogen habe, mir ein paar Beispiele angeschaut habe aus der Demo, bin ich immer noch kein wirkliches Stück schlauer geworden :roll:

Daher meine Frage bei dem Code hier:

Code: Alles auswählen

import wx
app = wx.PySimpleApp()
frame = wx.Frame(None, -1, "Hello World")

frame.Show(1)
app.MainLoop()
Wie kann ich ganz einfach eine Ausgabe machen?
Also so in der Art von:

Code: Alles auswählen

print ('hallo')
print (Variable1)
print (5)
Weil wirklich mehr brauche ich vor erst nicht :)
Na gut, es wäre noch praktisch, wenn ich die Schriftgröße einstellen könnte, sowie die Farbe und den Hintergrund... ;)

hat jemand ne idee?

mfg,
qweet
Leonidas
Administrator
Beiträge: 16024
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Sonntag 2. Oktober 2005, 10:39

Du brauchst ein App, zu diesem App brauchst du ein Frame und in diesem Frame brauchst du (meistens) ein Panel, auf diesem Panel kannst du dann Widgets unterbringen, wie ein Button und ähnliches.

Ein Beispiel aus dem Wiki:

Code: Alles auswählen

import wx
class MainWindow(wx.Frame):
    """ We simply derive a new class of Frame. """
    def __init__(self,parent,id, title):
        wx.Frame.__init__(self,parent,wx.ID_ANY,title,size=(200,100),
                          style=wx.DEFAULT_FRAME_STYLE|wx.NO_FULL_REPAINT_ON_RESIZE)
        self.control = wx.TextCtrl(self,1,style=wx.TE_MULTILINE)
        self.Show(True)

app = wx.PySimpleApp()

frame=MainWindow(None,-1,'Small editor')
app.MainLoop()
Naja, wxPython ist manchmal schon umständlich, das stimmt.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
qweet
User
Beiträge: 119
Registriert: Freitag 2. September 2005, 21:26

Sonntag 2. Oktober 2005, 16:33

konnte das jetzt realisieren. :)

hier mein code:

Code: Alles auswählen

import wx
import wx.lib.fancytext as fancytext

TestString = 'erste eigene Ausgabe'

class TestPanel(wx.Panel):
    def __init__(self, parent):
        wx.Panel.__init__(self, parent, -1)
        self.Bind(wx.EVT_PAINT, self.OnPaint)

    def OnPaint(self, evt):
        dc = wx.PaintDC(self)

        w, h = fancytext.GetExtent(TestString, dc)
        fancytext.RenderToDC(TestString, dc, 20, 20)

app = wx.PySimpleApp()

frame = wx.Frame(None, -1, "Hello World")

TestPanel(frame)
frame.Show(1)

app.MainLoop()
Antworten