elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Crear botones batch para una caculadora
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Crear botones batch para una caculadora  (Leído 8,163 veces)
Hekaly

Desconectado Desconectado

Mensajes: 85



Ver Perfil WWW
Crear botones batch para una caculadora
« en: 2 Agosto 2010, 13:08 pm »

Hace un tiempo encontré un comando externo de batch con el que puedes hacer muchas oparaciones aritmeticas, ademas de sacar por terminal decimales. Por ejemplo el script que realizaba ecuaciones de segundo grado que se publico en este foro,  con este comando sería mucho mas fácil.

Ahora bien, estoy trabajando para crear una calculadora cientifica, y me gustaría crear botones para que el usuario aparte de escribir, pudiera pinchar con el raton a los numeros o funciones.

He creado este codigo de ejemplo para que veais mejor lo que quiero decir:

Código:
@echo off

echo ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo º                         º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍËÍÍÍËÍÍ͹
echo º Sumar       º 1 º 2 º 3 º
echo ºÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo º Restar      º 4 º 5 º 6 º
echo ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo º Multiplicar º 7 º 8 º 9 º
echo ºÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo º Dividir     º 0 º   º   º
echo ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÊÍÍÍÊÍÍͼ
colous 0 0 02,02
set /p numero=

pause > nul



* También uso el comando colous.

Mi idea es que el usuario por ejemplo cliquee 12, aprete sumar y cliquee de nuevo 1.

Se que con el comango wbat puedo crear botones, pero no he visto como hacerlos sin que estos sean cuadrados y no rectangulares.

Aqui lanzo mi pregunta, hay alguna forma, con algun comando para que con el raton pinchar un boton hecho en batch??


En línea

FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #1 en: 2 Agosto 2010, 21:07 pm »

Si amigo la hay, se trata de usar una aplicación adjunta llamada DEBUG.exe con debug puedes establecer sistemas de coordenadas y aplicar sobre ellas colores, por ejemplo. La idea que tu dices es que establezca un sistema de coordenadas, en la que si pinchas sobre donde está el uno, aparezca el uno. Pero te doy la bienvenida a mi mundo: Porque yo estoy intentando que alguien de aquí me enseñe a usar el debug.


En línea

Hekaly

Desconectado Desconectado

Mensajes: 85



Ver Perfil WWW
Re: Crear botones batch para una caculadora
« Respuesta #2 en: 3 Agosto 2010, 01:21 am »

Ya veo FerJGS que los dos estamos esperando como se puede crear coordenadas en batch utilizando debug.exe.

He estado investigando un poco y he visto otras formas de hacerlo, utilizando el comando Cmouse.exe o utilizando el Mouse.dat tambien se puede lograr.

Aquí hay mas información:

http://foro.elhacker.net/scripting/manual_usar_mouse_en_batch-t260579.0.html

En línea

Binary_Death

Desconectado Desconectado

Mensajes: 214



Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #3 en: 6 Agosto 2010, 03:07 am »

Tienes que definir el objeto como un cojunto de coordenadas, por ejemplo:
Código:
set button_1=0,0;0,1;0,2; ... etc
Entonces, luego, con cmouse, colous o mouse.dat, obtienes una coordenada que el usuario clickeo y la compruebas con un find..
Código:
echo %button_1%|find ";coordenada;"
if errorlevel 0 (
rem aqui el código que se ejecutará si la coordenada obtenida corresponde a alguna de las coordenadas del objeto
)

Como ves controlando eso puedes saber si se pulso un X botón. Hay diversas maneras, sin embargo esa es la mas simple.
Saludos!

PD: Sobre coordenadas con "debug"... creé un manual hace unas semanas... no te sirve para esto, es más para parte gráfica escribiendo en la memoria de video...

Espero que no sea SPAM, si no, lo quito y no problem, es solo para ayudar: http://foro.portalhacker.net/index.php/topic,113483.0/wap2.html

En fin, saludos.

« Última modificación: 6 Agosto 2010, 03:10 am por Binary_Death » En línea

Hekaly

Desconectado Desconectado

Mensajes: 85



Ver Perfil WWW
Re: Crear botones batch para una caculadora
« Respuesta #4 en: 6 Agosto 2010, 17:10 pm »

Gracias Binary_Death.

No se me ocurrió poner cada coordenada de un boton en una variable e ir llamandolas.

Ya ire poniendo los resultados si todo va bien.
En línea

bolivianito

Desconectado Desconectado

Mensajes: 41



Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #5 en: 7 Agosto 2010, 16:15 pm »

Tambien podes usar GUIC, aunque te recomiendo Colous mouse si no quieres tanto la animacion, por que con colous, recibes las coordenadas, en cambio GUIC manejas como objetos.


Luego publicaré una calculadora de ejemplo con GUIC




saludos
En línea

Hekaly

Desconectado Desconectado

Mensajes: 85



Ver Perfil WWW
Re: Crear botones batch para una caculadora
« Respuesta #6 en: 15 Agosto 2010, 18:01 pm »

Buenas.

Ya he aprendido mas o menos a usar mouse.dat para que me refleje un numero (en este caso 1) en la pantalla de la calculadora.

Pero me hago un lio cuando quiero poner mas botones.

De momento tengo este código:

Código:
@echo off


echo. ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
echo. º                         º
echo. ÌÍÍÍÍÍÍÍÍÍÍÍÍÍËÍÍÍËÍÍÍËÍÍ͹
echo. º Sumar       º 1 º 2 º 3 º
echo. ºÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo. º Restar      º 4 º 5 º 6 º
echo. ÌÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo. º Multiplicar º 7 º 8 º 9 º
echo. ºÍÍÍÍÍÍÍÍÍÍÍÍÍÎÍÍÍÎÍÍÍÎÍÍ͹
echo. º Dividir     º 0 º   º   º
echo. ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÊÍÍÍÊÍÍÍÊÍÍͼ

:inicio

(
echo e100 B8 1 0'3'DB CD'3'B0 3'C'CD'3'B DB't'FA 91 D3 EA D3 E8 91 C3
echo g116
echo q
)>tmp.dat
Debug<tmp.dat|find /I "1" >tmp.txt
FOR /F "tokens=3" %%A IN ('type tmp.txt ^| find "CX="') DO (
IF "%%A"=="CX=0010" (set numero=1)
IF "%%A"=="CX=0011" (set numero=1)
IF "%%A"=="CX=0012" (set numero=1)
)


colous 0 0 03,02
echo %numero%


(
echo e100 B8 1 0'3'DB CD'3'B0 3'C'CD'3'B DB't'FA 91 D3 EA D3 E8 91 C3
echo g116
echo q
)>tmp.dat
Debug<tmp.dat|find /I "4" >tmp.txt
FOR /F "tokens=3" %%A IN ('type tmp.txt ^| find "CX="') DO (
IF "%%A"=="CX=0010" (set numero2=4)
IF "%%A"=="CX=0011" (set numero2=4)
IF "%%A"=="CX=0012" (set numero2=4)
)


colous 0 0 04,02
echo %numero2%

goto inicio

Lo que intento hacer es convertir el 1 y el 4 en botones para que aparezcan en la pantalla. Si apreto el 1 todo va bien, pero si apreto el 4 o apreto dos veces uno de los botones no se refleja, aparte de decirme que echo esta desactivado.

Lo que he pensado es que al apretar un boton, este se guarde como variable y que redireccione a una parte de mouse.dat para que salga en la pantalla, para volver hacer un bucle al principio y dar a mas botones.

Sabeis cual es el error que cometo??, Se puede dar tantas veces a un boton y que lo refleje en la pantalla??, gracias.



En línea

FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #7 en: 15 Agosto 2010, 21:28 pm »

mmm..veamos, si los clics del ratón se guardan en mouse.dat...puedes hacer dos cosas...

a) eliminar el contenido de mouse.dat para tenerlo libre para la siguiente pulsación

b) una vez que ha tomado un valor de mouse.dat, tomarlo de la siguiente línea


puedes hacer un for /f skip %var%  haciendo que la avriable aumente uno cada vez que tome las coordenadas de allí.

Espero que te sirva....

Ahora va mi pregunta....¿alguien puede explicarme detenidamente cómo usar el ratón en batch? Porque no entiendo qué es e 100 B8 A0 CD en debug al principio, no sé como almacenar en variables las coordenadas, ni consultar el archivo, ni crearlo ni nada. ¿Alguien me puede ayudar?
En línea

FerJGS

Desconectado Desconectado

Mensajes: 75


Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #8 en: 25 Agosto 2010, 01:02 am »

Bueno, ya me he aclarado un poco con el ratón...Ahora te digo que creo que bastaría con un código donde al pulsar un botón se guardara la variable (por ejemplo si haces clic en el botón del 1 guarde una avriable cone l valor de 1. Y con un bucle vuelves al principio, de esta forma te permitiría pulsar otro botón pero la variable se conservaría, ¿no?
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.821



Ver Perfil
Re: Crear botones batch para una caculadora
« Respuesta #9 en: 3 Diciembre 2012, 10:17 am »

@r7pyrred
¿Cuando empezarás a seguir las normas del foro?

No está permitido revivir posts antiguos.
Tema cerrado.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Imagenes para botones
Diseño Gráfico
alzehimer_cerebral 1 14,443 Último mensaje 23 Noviembre 2010, 18:59 pm
por 1mpuls0
Crear n botones
Java
Tyrz 4 3,440 Último mensaje 22 Abril 2011, 10:59 am
por Tyrz
Crear eventos en botones [Win API]
Programación C/C++
Alien-Z 1 3,747 Último mensaje 31 Agosto 2011, 00:33 am
por Riki_89D
Crear Batch
Scripting
adsla 5 4,850 Último mensaje 4 Noviembre 2011, 23:15 pm
por adsla
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines