Todella helppoa verrattuna esim. Tkinterin käyttöön, joten laitoin esimerkkiohjelman tänne niin siitä voi olla hyötyä muillekkin. Easyguin pitää tietenkin olla asennettuna, asennusohjeet ja lataus täältä:
http://easygui.sourceforge.net/
ja lisää ohjeita:
http://www.ferg.org/easygui/tutorial.html
Sitten koodaamaan. Tässä on Python 3:lla kirjoitettu esimerkkiohjelma, joka arvaa, mitä lukua käyttäjä ajattelee.
try: import easygui
except ImportError: print("Virhe! Asenna easygui ja yritä uudelleen.")
title = "Arvauspeli"
msg = "Tervetuloa arvauspeliin! Valitse positiivinen kokonaisluku ja pidä se mielessä pelin ajan."
if easygui.buttonbox(msg,
title = title,
choices = ["Pelaamaan!", "Peruuta"]) == "Peruuta":
exit()
arvauksia = 0
arvaus = 16
edelliso = 0
isompi = True
valmis = False
while not valmis:
msg = "Onko se " + str(arvaus) + "?"
valinta = easygui.buttonbox(msg,
title = title,
choices = ["Kyllä!", "Suurempi", "Pienempi"])
if valinta == "Suurempi":
edelliso = arvaus
pienin = arvaus
if isompi:
isoin = 3 * arvaus
if valinta == "Pienempi":
isompi = False
isoin = arvaus
pienin = edelliso
arvauksia += 1
try: arvaus = int((pienin + isoin) / 2)
except NameError: pass
if valinta == "Kyllä!":
if arvauksia == 1:
msg = "Hienoa! Siihen tarvittiin 1 arvaus."
else:
msg = "Hienoa! Siihen tarvittiin "+ str(arvauksia) + " arvausta."
easygui.msgbox(msg)
valmis = TrueNäyttää ihan kivalta, että tästä olisi varmaan ollut koodivinkiksikin.
Koodin alkuun voisi laittaa seuraavaa, mikäli käyttää Linuxia.
#!/usr/bin/python
Ja merkistökoodaus...
# -*- coding: utf8 -*-
peran: Käytän Linuxia ja toimii ihan hyvin päätteellä, IDLEllä ja Windows XP-virtuaalikoneella ajettuna. Python 3:ssa merkistöongelmia on yleensä vähemmän kuten ohjelmointiputkan oppaankin loppuosa sanoo: https://www.ohjelmointiputka.net/oppaat/opas.
Näyttääkin toimivan python3:lla, muttei toiminut itselläni oletuksena olevalla python2:lla ilman kyseisiä muutoksia. (Olitkin ilmoittanut, että kyseinen toimii python3:lla.)
Edit - Mutta tosiaan, kyseinen olisi ihan kiva koodivinkki.
Mietinkin, että kannattaako se laittaa koodivinkkeihin vai keskusteluun. Laitoin sen tänne, koska täälläkin saa esitellä omia ideoita ja ohjelmia.
peran: käytätkö Linuxia? Voit ajaa Python 3-ohjelmia kirjoittamalla päätteeseen:
python3 /ohjelman_sijainti/ohjelman_nimi/
Voit myös asentaa IDLEn Linuxille ohjelmistohallinnasta, pakettienhallinnasta tai mitä distrossasi sattuukaan olemaan.
aqman kirjoitti:
peran: käytätkö Linuxia? Voit ajaa Python 3-ohjelmia kirjoittamalla päätteeseen:
python3 /ohjelman_sijainti/ohjelman_nimi/
Joo, silleen testasin, ja huomasin toimivaksi, kuten ilmoitin edellisessä viestissäni.
aqman kirjoitti:
Voit myös asentaa IDLEn Linuxille ohjelmistohallinnasta, pakettienhallinnasta tai mitä distrossasi sattuukaan olemaan.
Käytän sen verran vähän Pythonia, että pärjäilen kate:lla.
On ehdoteltu että tekisin tästä koodivinkin. Mielestäni koodivinkiksi sopisi ohjelma, joka esittelisi eri toimintoja joita yhdessä esimerkissä on hankalaa käyttää, esim. gif-kuvan liittäminen buttonboxiin. Siihen voisi vaikka laittaa linkin tälle sivulle. Toivottavasti saan sen valmiiksi tänään.
Aihe on jo aika vanha, joten et voi enää vastata siihen.