This repository has been archived by the owner on Mar 28, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathstrToGUI.py
189 lines (150 loc) · 6.85 KB
/
strToGUI.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
#!/usr/bin/env python
#-*- coding:utf8 -*-
flag = True
while flag:
try:
from Tkinter import *
import tkMessageBox
flag = False
except:
print "Tkinter is not installed"
opc = raw_input("Would you like to install it? only ubuntu and derivates... [yes/not]: ")
if opc == "yes" or opc == "Y" or opc == "y" or opc == "YES" or opc == "Yes":
import os
os.system("sudo apt-get install python python-tk idle python-pmw python-imaging")
raw_input("The installation is succes! Hit enter...")
else:
exit()
#----------------------------------------------------------------------------------------------------
''' CREACION DE LA VENTANA PRINCIPAL '''
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
ventana = Tk()
ventana.title("Convertir palabra")
ventana.config(bg="#1F6095")
ventana.geometry("820x350+340+150")
ventana.resizable(0,0)
#ventana.centerWindow()
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
''' ADAPTACION DE LA VENTANA PRINCIPAL '''
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
imagenHCK = PhotoImage(file='./hck1.gif')
labHCK = Label(ventana,image=imagenHCK,relief=FLAT)
labHCK.place(x=700,y=43)
topLabel = Label(ventana, text="PiR00d Haslam",bg="#1F6095",font='{courier 200 bold}',justify="center")
topLabel.place(x=300,y=5)
wordEntry = StringVar()
wordAscii = StringVar()
wordHex = StringVar()
wordBin = StringVar()
labelInWord = Label(ventana,text="Introdusca la palabra: ",relief="flat",bg="#1F6095",font='{courier 200 bold}')
labelInWord.place(x=240,y=40)
entradaWord = Entry(ventana,textvar=wordEntry,relief=FLAT)
entradaWord.place(x=240,y=80)
# Etiqueta ascii
labelAscii = Label(ventana,text="Ascii: ",bg="#1F6095",font='{courier 200 bold}')
labelAscii.place(x=20,y=140)
# Muestra valor de la palabra en Ascii en una etiqueta
labelOutAscii = Label(ventana,textvar=wordAscii,bg="#1F6095",font='{courier 200 bold}')
labelOutAscii.place(x=70,y=140)
# Boton de copiar palabra en Ascii
copyWordAscii = Button(ventana,text="Copy",relief=FLAT,border=2,command=lambda:copy2clip(cadenaHex))
copyWordAscii.place(x=20,y=160)
labelHex = Label(ventana,text="Hex: ",bg="#1F6095",font='{courier 200 bold}')
labelHex.place(x=20,y=220)
labelOutHex = Label(ventana,textvar=wordHex,bg="#1F6095",font='{courier 200 bold}')
labelOutHex.place(x=70,y=220)
labelBin = Label(ventana,text="Bin: ",bg="#1F6095",font='{courier 200 bold}')
labelBin.place(x=20,y=250)
labelOutBin = Label(ventana,textvar=wordBin,bg="#1F6095",font='{courier 200 bold}')
labelOutBin.place(x=70,y=250)
botonGenerar = Button(ventana,text="Generar",relief=FLAT,command=lambda:obtenerAscii(wordEntry.get(),wordAscii))
botonGenerar.place(x=420,y=75)
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
''' CREACION DEL SPLASH PRINCIPAL '''
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
v1=Toplevel(ventana)
v1.geometry("500x500+420+100")
v1.config(bg="white")
v1.protocol("WM_DELETE_WINDOW", "onexit")
v1.resizable(0,0)
dogSir = PhotoImage(file="./dogLikeSir.gif")
imagenHCK1 = PhotoImage(file='./hck2.gif')
labHCKSplash = Label(v1,image=imagenHCK1,relief=FLAT)
labHCKSplash.place(x=400,y=20)
def imprimir(texto): print texto
def mostrar(ventana): return ventana.deiconify # Muestra una ventana
def ocultar(ventana): return ventana.withdraw() # Oculta una ventana
def ejecutar(f): ventana.after(100, f)
ocultar(ventana)
def cerrar_splashscreen():
ejecutar(ocultar(v1))
ejecutar(mostrar(ventana))
v1.after(4000,cerrar_splashscreen)
labelShowTextSplash = Label(v1,text="PiR00d Haslam",relief=FLAT,bg="white",fg="black",font='{courier 200 bold}')
labelShowTextSplash.place(x=120,y=15)
labelShowImgSplash = Label(v1,image=dogSir,relief=FLAT,bg="white",font='{courier 200 bold}',justify="center")
labelShowImgSplash.place(x=90,y=90)
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
''' FUCNIONES A EJECUTAR '''
#----------------------------------------------------------------------------------------------------
#----------------------------------------------------------------------------------------------------
listadeCadenasAscii = []
#def mostrarPalabra(palabraIn,showWord):
# showWord.set("["+palabraIn+"]")
cadenaAscii = ""
cadenaHex = ""
cadenaBin = ""
def obtenerAscii(palabra,showAscii):
listadeCadenasAscii = []
variable = palabra
global cadenaAscii
tamVariable = len(variable)
# Obtener el ASCII de una palabra (Completo)
for i in range(tamVariable):
auxVar = variable[i]
auxVar = ord(auxVar)
auxVar = str(auxVar)
cadenaAscii = cadenaAscii + auxVar
listadeCadenasAscii.insert(i,auxVar)
showAscii.set("["+cadenaAscii+"]")
obtenerHex(listadeCadenasAscii,wordHex)
obtenerBinario(listadeCadenasAscii,wordBin)
def obtenerHex(palabra,showHex):
listaAscii = palabra
listadeCadenasHex = []
global cadenaHex
for j in range(0,len(listaAscii)):
varToHex = listaAscii[j]
varToHex = int(varToHex)
varHex = hex(varToHex)
varHex = str(varHex)
varHex = varHex[2:]
cadenaHex = cadenaHex + varHex
showHex.set("["+cadenaHex+"]")
def obtenerBinario(palabra,showBin):
listaAsciiB = palabra
global cadenaBin
for k in range(0,len(listaAsciiB)):
varToBin = listaAsciiB[k]
varToBin = int(varToBin)
varBin = bin(varToBin)
varBin = str(varBin)
varBin = varBin[2:]
cadenaBin = cadenaBin + varBin
showBin.set("["+cadenaBin+"]")
def copy2clip(word):
v1.clipboard_clear()
v1.clipboard_append(word)
clipText = v1.clipboard_get()
global cadenaHex
print "Cadena copiada correctamente! :%s" %cadenaHex
ventana.mainloop()