5MLimited

# example 5MLimitedClone001.py by skole www.pi+ppo.org

import Tkinter

from Tkinter import *

from ScrolledText import *

import tkFileDialog

import tkMessageBox

import os

os.system('ls *.py')


FILEOPENOPTIONS = dict(defaultextension='.py',

                       filetypes=[('homework make python code...','*.py'), ('All files','*.*')])

MYLIBTKOPENOPTIONS = dict(defaultextension='.lib',

                       filetypes=[('mylibpyTk code...','*.py'), ('All files','*.*')])

                       

py5M2017 = Tkinter.Tk(className="py5M2017Limitedclone001")

textPad = ScrolledText(py5M2017, width=100, height=100)


fontname = "Monospace"

size = "16"

font = fontname + " " + size


textPad.config(

    borderwidth=0,

    font=font,

    foreground="black",

    background="white",

    insertbackground="red", # cursor

    selectforeground="blue", # selection

    selectbackground="#008000",

    wrap="word",

    width=64,

    undo=True, # config like py5M2017LimitedCloneXXX

    )

   

def open_command():

        file = tkFileDialog.askopenfile(initialdir="/home/skole/5M/", parent=py5M2017,mode='rb',title='file...', **FILEOPENOPTIONS)

        if file != None:

            myfilepy = file.read()

            textPad.insert('1.0',myfilepy)

            file.close()

     

def saveas_command():

    filename = tkFileDialog.asksaveasfile(mode='w', defaultextension=".py")

    if filename is None: # asksaveasfile return `None` if dialog closed with "cancel".

        return

    text2save = str(textPad.get(1.0, END)) # starts from `1.0`, not `0.0`

    filename.write(text2save)

    filename.close()

    print filename


def runpy_command():

myfilename = tkFileDialog.askopenfilename(initialdir="lists/custom/", filetypes=(("code py","*.py"), ("All py files", "*.py")))

if tkMessageBox.askokcancel("run myfile.py"):

os.system('python %s' % myfilename) # run myfile.py


def clear_command(): # clear all items textPad to create a new code

textPad.delete('1.0', END+'-1c')


def exit_command():

    if tkMessageBox.askokcancel("you exit"):

        py5M2017.destroy()


def ossys_command():

    if tkMessageBox.askokcancel("run shell"):

        print ('%s' % OSsys.get('0.0',END))

        os.system('%s' % OSsys.get('0.0',END))

       

def mylibtk_command():

        file = tkFileDialog.askopenfile(parent=py5M2017,mode='rb',title='file...', **MYLIBTKOPENOPTIONS)

        if file != None:

            myfilepy = file.read()

            textPad.insert('1.0',myfilepy)

            file.close()


def about_command():

    label = tkMessageBox.showinfo("About", "5M.2017LimitedClone001 \nby skole www.pi+ppo.org")

         

def dummy():

    print "I am a Dummy Command, I will be removed in the next step"

   

menu = Menu(py5M2017)

py5M2017.config(menu=menu)

filemenu = Menu(menu)

menu.add_cascade(label="File", menu=filemenu)

filemenu.add_command(label="Open and edit homework.py...", command=open_command)

filemenu.add_command(label="Save as homework.py...", command=saveas_command)

filemenu.add_command(label="Run myfile.py python code...", command=runpy_command)

filemenu.add_command(label="Clear python code...", command=clear_command)

filemenu.add_command(label="Run shell system...", command=ossys_command)

filemenu.add_command(label="Open mylibtk...", command=mylibtk_command)

filemenu.add_separator()

filemenu.add_command(label="Exit", command=exit_command)

helpmenu = Menu(menu)

menu.add_cascade(label="Help", menu=helpmenu)

helpmenu.add_command(label="About...", command=about_command)


OSsys = Text(py5M2017, height=1, width=100)

OSsys.pack()

OSsys.insert(END, "insert shell command OS...")

textPad.pack(side="left", fill="both", expand=True)# expand textPad all windows

py5M2017.mainloop()


Si...OK molto molto limitato... quasi SPARTANO...

ma funzionale... :

Funz_1) clonare velocemente nuovi programmi

Funz_2) inserire velocemente funzioni e/o modelli da mylibTk....

Funz_3) eseguire e verificare le funzionalità dei nuovi programmi

Funz_4) eseguire comandi system/shell per controlli files di sistema...

editare... evitando di usare il tabulatore ma solo 4 spazi...

copia e incolla solo con la tastiera ecc... scusa per la traduzione...usa il browser ciao

# example 5MLimited... by skole www.pi+ppo.org

import Tkinter

from Tkinter import *

MyWindow = Tkinter.Tk(className="MyWindow") # Tkinter windows


listbox = Listbox(MyWindow)

listbox.pack()


listbox.insert(END, "Lista... numeri...")


for item in ["1..uno", "2..due", "3..tre", "4..quattro", "5..e cinque"]:

    listbox.insert(END, item)


MyWindow.mainloop()


...


# example 5MLimited... by skole www.pi+ppo.org

import Tkinter

from Tkinter import *

MyWindow = Tkinter.Tk(className="MyWindow") # Tkinter windows


frame = Frame(MyWindow)

frame.pack()


bottomframe = Frame(MyWindow)

bottomframe.pack( side = BOTTOM )


redbutton = Button(frame, text="Red", fg="red")

redbutton.pack( side = LEFT)


greenbutton = Button(frame, text="Brown", fg="brown")

greenbutton.pack( side = LEFT )


bluebutton = Button(frame, text="Blue", fg="blue")

bluebutton.pack( side = LEFT )


blackbutton = Button(bottomframe, text="Black", fg="black")

blackbutton.pack( side = BOTTOM)


MyWindow.mainloop()


...


# example 5MLimited... by skole www.pi+ppo.org

import Tkinter

from Tkinter import *

MyWindow = Tkinter.Tk(className="MyWindow") # Tkinter windows


frame = Tkinter.Frame(MyWindow, height=100, width=100,background="white")

texthello = Text(MyWindow, height=1, width=100)

textinput = Text(MyWindow, height=1, width=100)


frame.pack()

texthello.pack()

texthello.insert(END, "hello, world")

textinput.pack()

textinput.insert(END, "insert shell command OS...")


MyWindow.mainloop()


Examples python usando 5MLimited...

si OK hai ragione da VENDERE.. è molto limitato:

senza gli oggetti visivi(icone)... di base

senza le proprietà... degli oggetti di base preimpostati

senza l'inserimento auto-matico degli oggetti nel programma...   

senza il debug...

my + senza...


si OK my+senza... ma lo hai provato..?

funziona..?

dove funziona...? 

è rapido..?

è complicato...?

che limiti può avere...? a parte i my+limiti... di conoscenza+creatività ciao


Tu pensi che utilizando 5MLimited si possano ridurre... le tue lacune...

Si OK... o molte lacune...

hò un vuoto di conoscenze..., sono molto carente nelle lingue...

e nelle culture... hò anche mancanza di fiducia nelle my-capacità

di ridurle... senza studiare, e senza impegnare un pò del mio tempo

di media circa 2 ore al giorno per provare codice... sperando... che

questo riesca a ridurre in parte il v.oto delle mie lacune...

Non sempre... comprendere e uguale a realizzare e realizzare e uguale

a comprendere... by skole pi+ppo....

Il codice è necessario per relazionare uomo<>macchina<>macchina<>uomo,

sempre più codice unito a sofisticate macchine con sensori molto più

potenti dei nostri sensi... soddisfano le nostre necessità... quotidiane

Ma pensi che portare a termine un compito... per queste macchine sia

semplice... come per te disegnare una qualsiasi cosa che ti possa...

passare per le tue lacune...


Quindi non sei tu ma è una macchina(PC) che disegna...?

Si OK... molte macchine disegnano partendo da programmi che

usano tabelle con le coordinate X,Y,Z per completare le figure

giometriche 2D e/o sviluppare elaborando le coordinate di ruotazione

per creare i solidi in 3D partendo dal disegno 2D.

Ma altre possono partire da una foto, e altre ancora possono usare

per la prima volta la tua mano per apprendere il movimento

e ripeterlo migliaia di volte sempre uguale...

Queste macchine sono ingrado di plottare modelli su tessuti e

di tagliare automaticamente rducendo gli sfridi(scarto) al minimo

pensa a quanto costa un paio di stivali in pitone...

Io il pitone mi limito a disegnarlo...


CONTACT US

 

  Tel: .....

FOLLOW US

PROFILE

Profile ...

© Copyright 2016-2019 All Rights Reserved.