Foros del Web » Programación para mayores de 30 ;) » .NET »

Simple Click

Estas en el tema de Simple Click en el foro de .NET en Foros del Web. Buenas, Alguien me podria decir c¿ómo mandar un comando click? He mirado por el foro y google y esque son muy complicados como para ser ...
  #1 (permalink)  
Antiguo 24/08/2011, 07:25
 
Fecha de Ingreso: diciembre-2008
Mensajes: 46
Antigüedad: 15 años, 4 meses
Puntos: 1
Simple Click

Buenas,
Alguien me podria decir c¿ómo mandar un comando click?
He mirado por el foro y google y esque son muy complicados como para ser algo sencillo, me refiero un comando para que un time lo ejecute, en plan
SendKeys.Send("{ENTER}")
a algo como send click
Saludos
  #2 (permalink)  
Antiguo 24/08/2011, 07:53
Avatar de Aquaventus  
Fecha de Ingreso: junio-2010
Ubicación: Lima-Peru , En el alba de la naturaleza
Mensajes: 2.105
Antigüedad: 13 años, 10 meses
Puntos: 267
Respuesta: Simple Click

Hola Gold_Xp, no me queda claro cual es el motivo para que envies un "click" porque puede que ese evento click realice una accion.... o dirija el foco hacia algun control... Por favor cuentanos el fin para poder ayudarte. Saludos!.
__________________
Internet es tener todo el conocimiento global a tu disposición.
Desarrollo de Software - Ejemplos .Net
  #3 (permalink)  
Antiguo 24/08/2011, 07:57
 
Fecha de Ingreso: diciembre-2008
Mensajes: 46
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Simple Click

Buenas,
Simplemente, tengo un programa externo, que al realizar un impresión pierde el focus en su campo de referencia, y claro tengo que estar clickeando continuamente para poder seguir imprimiendo.
Tengo hecho con VS el comando para que se me situe el raton justo encima de ese campo, y lo único que falta es que el ratón haga ese Super Click en ese campo :P
Simplemente un Click.
Saludos
  #4 (permalink)  
Antiguo 06/09/2011, 10:50
 
Fecha de Ingreso: diciembre-2008
Mensajes: 46
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Simple Click

Nadie sabe como???
  #5 (permalink)  
Antiguo 06/09/2011, 12:24
Avatar de freegirl
Colaborador
 
Fecha de Ingreso: octubre-2003
Ubicación: Catalonia
Mensajes: 4.334
Antigüedad: 20 años, 6 meses
Puntos: 156
Respuesta: Simple Click

no sé si acabo de entender muy bien el problema.....Corrígeme si no es asi:

en un formulario tienes un botón y una caja de texto. Cuando pulsas el botón lanzas una impresión con una app tercera. cuando termina de imprimir quieres que el foco vuelva a la caja de texto. ¿es así? o el foco tiene que volver al botón?

¿qué código tienes en el botón?
__________________
Saludos
  #6 (permalink)  
Antiguo 06/09/2011, 12:25
Avatar de giovani_loera  
Fecha de Ingreso: mayo-2011
Ubicación: Tijuana
Mensajes: 225
Antigüedad: 12 años, 11 meses
Puntos: 21
Respuesta: Simple Click

No entiendo bien tu problema, pero lo que dice Aquaventus , es que le pongas el focus al control despues de ejectuar la accion

btnImprimir.Focus();

Pero tambien entiendo que tienes varias hojas,archivos,imagenes,etc y q las quieres imprimir todas, y lo que hace tu programa ahorita es que tienes que dar click al boton imprimir por cada hoja que tienes.

Con respesto a esto, puedes usar un foreach o un for, para recorrer todos los archivos e imprimir uno por uno (esto estara dentro del Evento Click del boton Imprimir).
  #7 (permalink)  
Antiguo 06/09/2011, 13:22
 
Fecha de Ingreso: diciembre-2008
Mensajes: 46
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Simple Click

Gracias por las respuestas, pero no.
Lo que realmente necesito es simplemente mandar un click.
El otro programa es completamente externo a mi aplicación, por eso el focus no chufla T_T
simplemente un click izquierdo, por ejemplo en el escritorio mismo.
en plan, sendkey, aver si hay un sendmouse :P
Saludos

Última edición por Gold_Xp; 07/09/2011 a las 01:48
  #8 (permalink)  
Antiguo 10/11/2011, 08:17
 
Fecha de Ingreso: diciembre-2008
Mensajes: 46
Antigüedad: 15 años, 4 meses
Puntos: 1
Respuesta: Simple Click

Nadie me puede contestar???
Plis
  #9 (permalink)  
Antiguo 10/11/2011, 14:25
Avatar de JxDarkAngel  
Fecha de Ingreso: septiembre-2009
Mensajes: 82
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Simple Click

Ya habia tenido un prblema asi, aqui te dejo la clase para dar auto clic y que solito el mouse de clic derecho o izquierdo en la posicion donde tu le indiques el intervalo de tiempo en que quieres que de clic el mouse


public class AutoClic
{
const int MOUSEEVENTF_LEFTDOWN = 2;
const int MOUSEEVENTF_LEFTUP = 4;
const int MOUSEEVENTF_RIGHTDOWN = 8;
const int MOUSEEVENTF_RIGHT_UP = 16;

const int INPUT_MOUSE = 0;

[DllImport("User32.dll", SetLastError = true)]
public static extern int SendInput(int nInputs, ref INPUT pInputs, int cbSize);

private Point ClicLocation = new Point();
private Timer tmrLapso = null;

private bool ClicDerecho = false;
private bool ClicIzquierdo = false;

public AutoClic()
{
InicializarComponentes();
}

private void InicializarComponentes()
{
tmrLapso = new Timer();
tmrLapso.Enabled = false;
tmrLapso.Tick += new EventHandler(tmrLapso_Tick);
}

void tmrLapso_Tick(object sender, EventArgs e)
{
Cursor.Position = ClicLocation;

INPUT i = new INPUT();

i.type = INPUT_MOUSE;
i.mi.dx = 0; //ClicLocation.X;
i.mi.dy = 0; // ClicLocation.Y;
i.mi.mouseData = 0;
i.mi.time = 0;

if (ClicIzquierdo)
{
i.mi.dwFlags = MOUSEEVENTF_LEFTDOWN;
SendInput(1, ref i, Marshal.SizeOf(i));

i.mi.dwExtraInfo = IntPtr.Zero;

i.mi.dwFlags = MOUSEEVENTF_LEFTUP;
SendInput(1, ref i, Marshal.SizeOf(i));
}

if (ClicDerecho)
{
i.mi.dwFlags = MOUSEEVENTF_RIGHTDOWN;
SendInput(1, ref i, Marshal.SizeOf(i));

i.mi.dwExtraInfo = IntPtr.Zero;

i.mi.dwFlags = MOUSEEVENTF_RIGHT_UP;
SendInput(1, ref i, Marshal.SizeOf(i));
}
}

public void DarClicDerecho(Point Localizacion, int Segundos)
{
ClicDerecho = true;
ClicIzquierdo = false;

ClicLocation = Localizacion;
Segundos = Segundos * 1000;
tmrLapso.Interval = Segundos;
tmrLapso.Start();
}

public void DarClicIzquierdo(Point Localizacion, int Segundos)
{
ClicIzquierdo = true;
ClicDerecho = false;

ClicLocation = Localizacion;
Segundos = Segundos * 1000;
tmrLapso.Interval = Segundos;
tmrLapso.Start();
}

public void DetenerAutoClic()
{
ClicDerecho = false;
ClicIzquierdo = false;
tmrLapso.Stop();
}

#region ESTRUCTURAS
public struct MOUSEINPUT
{
public int dx;
public int dy;
public int mouseData;
public int dwFlags;
public int time;
public IntPtr dwExtraInfo;
}

public struct INPUT
{
public uint type;
public MOUSEINPUT mi;
};

#endregion
}

Para hacer uso de esta clase, tienes que crear una nueva instancia de esta, y mandar a llamar a sus metodos.

Ejemplo:

Point Posicion=new Point (200,500);

AutoClic objClic=new AutoClic();
objClic.DarClicIzquierdo(Posicion,10);

Al mandar a llamar el metodo, solito el mouse empieza a dar clic izquierdo en la Posicion 200,500 cada 10 segundos.

Sale espero le saques provecho a la clase

Última edición por JxDarkAngel; 10/11/2011 a las 14:25 Razón: ortografia
  #10 (permalink)  
Antiguo 10/11/2011, 14:27
Avatar de JxDarkAngel  
Fecha de Ingreso: septiembre-2009
Mensajes: 82
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Simple Click

Cualkier duda con la clase, te dejo mi correo [email protected]

Etiquetas: simple
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:41.