Python - jednoduchá úloha – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Python - jednoduchá úloha – Python – Fórum – Programujte.comPython - jednoduchá úloha – Python – Fórum – Programujte.com

 

Adam
~ Anonymní uživatel
176 příspěvků
6. 6. 2020   #1
-
0
-

Zdravím, potreboval by som pomoc s touto úlohou v pythone
 

Vytvor program, ktorý:
1) vypíše tvoje meno
2) budú sa na nej pohybovať dva nezávislé objekty
3) budú sa dať zastaviť stlačením klávesy tak, že po stlačení klávesy "a" sa zastaví resp. spustí prvý objekt a po stlačení klávesy "b" sa zastaví resp. spustí pohyb druhého objektu. /teda nezávisle/
4) program skončí po kliknutí myšou v pravom hornom rohu obrazovky, kde bude v rámčeku nápis "KONIEC"

ďakujem 

Nahlásit jako SPAM
IP: 81.92.251.–
gna
~ Anonymní uživatel
1849 příspěvků
6. 6. 2020   #2
-
0
-

A s čím konkrétně si nevíš rady?

Nahlásit jako SPAM
IP: 213.211.51.–
Karel
~ Anonymní uživatel
167 příspěvků
6. 6. 2020   #3
-
+1
-
Zajímavé

V této fázi mohu nabídnout pouze morální podporu.
Adam, do toho!!! 

Adam, do toho!!! 

Adam, do toho!!! 

Nahlásit jako SPAM
IP: 46.13.186.–
Adam
~ Anonymní uživatel
176 příspěvků
7. 6. 2020   #4
-
0
-

Tak ma to byt program, ktory vypise na obrazovku tie vyssie uvedene body
toto je vsetko na co som prisiel

import tkinter
import random

canvas = tkinter.Canvas(width=600, height=300)
canvas.pack()

canvas.create_text(85, 50, text='MOJE MENO', font='Arial 15', fill='black')
canvas.create_text(545, 50, text='KONIEC', font='Arial 20', fill='black')
canvas.create_rectangle(490,30,600,70)


def kruh():
canvas.crate_oval(x+10,y+10,x-10,y-10)
x=50
y=50

def kruh1():
canvas.crate_oval(x-10,y-10,x+10,y+10)
x=200
y=200

canvas.bind('<a>',kruh)
canvas.bind('<b>',kruh1)

vobec neviem ako na to, aby sa hybali naraz, vlastne ani na to aby sa to vobec hybalo...
tiez to, ked na urcite miesto kliknem, tak sa nieco udeje

informatika a pocitace idu uplne mimo mna, takze to aj tak vyzera...

dakujem, ze ste aj odpisali

Nahlásit jako SPAM
IP: 81.92.251.–
gna
~ Anonymní uživatel
1849 příspěvků
7. 6. 2020   #5
-
0
-

Create vrací identifikátor objektu, který budeš potřebovat, abys s ním pak mohl pracovat. Na posunutí objektu můžeš použít move. Pohyb uděláš tak, že budeš opakovaně volat move. Na to můžeš použít after. Takže si jen potřebuješ pamatovat identifikátor objektu a jestli/jak se má pohybovat.

Kliknutí na objekt canvasu můžeš odchytit pomocí canvas.tag_bind. Nemyslím si, že bys dostal úlohu na věci, které jste se neučili.

import math, random
from tkinter import Tk, Canvas


class Movable:
    def __init__(self, canvas, cid, dx, dy):
        self.canvas = canvas
        self.cid = cid
        self.dx = dx
        self.dy = dy
        self.moving = False

    def toggle(self):
        self.moving = not self.moving

    def move(self):
        if not self.moving:
            return
        x, y = self.canvas.coords(self.cid)
        w, h = self.canvas.winfo_width(), self.canvas.winfo_height()
        if not 0 <= x + self.dx < w:
            self.dx *= -1
        if not 0 <= y + self.dy < h:
            self.dy *= -1
        self.canvas.move(self.cid, self.dx, self.dy)


def main():
    w, h = 400, 400

    root = Tk()

    canvas = Canvas(root, width=w, height=h)
    canvas.pack()

    movables = {}
    for idx, key in enumerate('abcdefghijklmnopqrstuvwxyz'):
        a = idx * math.pi / 13
        x = math.cos(a)
        y = math.sin(a)
        cid = canvas.create_text(w / 2 + x * w / 4, h / 2 + y * h / 4, text=key)
        movables[key] = Movable(canvas, cid, x * 10, y * 10)

    def onkey(event):
        key = event.char.lower()
        if key in movables:
            movables[key].toggle()

    def onupdate():
        for obj in movables.values():
            obj.move()
        root.after(100, onupdate)

    root.bind('<Key>', onkey)
    root.after(100, onupdate)
    root.mainloop()


if __name__ == '__main__':
    main()
Nahlásit jako SPAM
IP: 213.211.51.–
peter
~ Anonymní uživatel
3981 příspěvků
8. 6. 2020   #6
-
0
-

"informatika a pocitace idu uplne mimo mna, takze to aj tak vyzera..."

To je jen hloupa vymluva. Proc by sis vybiral obor, kde je programovani, kdyz pak mas takovehle vymluvy?
Navic, dneska, clovek, co neovlada zaklady programovani, tak vypada jako clovek z pralesa. Opice tam skacou po strome a ji brouky. Mobil je pro ne cizi zla oskliva vec, se kterou se nebudou ani zabyvat. Viz tva vlastni slova " idu uplne mimo mna" :)
Kdyz nepochopis, jak naprogramovat tohle, jak muzes resit nejaky problem pomoci pocitace? Neco ti tam nepujde a vubec nebudes chapat, co by mohlo byt pricinou. Reseni ukolu se ti protahne tak na mesic. Pak budes rikat, jak zle a oslive veci ty pocitace jsou, ikdyz jenom ta obsluha je uplne k nicemu :)

Nahlásit jako SPAM
IP: 2001:718:2601:258:4dbc:3838:5a25:f2e0...–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 4 hosté

Podobná vlákna

Jednoducha uloha — založil Trebor

Python-zavirani oken v python shell — založil Daniel zita

Jednoduchá aplikace. — založil Morpheus

Jednoducha grafika — založil patee

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý