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

 

 


Tema destacado: Usando Git para manipular el directorio de trabajo, el índice y commits (segunda parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Realizar función al hacer click en un input button de un WebBrowser?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 [2] 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: Realizar función al hacer click en un input button de un WebBrowser?  (Leído 19,863 veces)
XresH


Desconectado Desconectado

Mensajes: 384



Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #10 en: 12 Junio 2013, 20:58 pm »

Estás seleccionando el WebBrowser equivocado.

Por eso los errores, es eso.

Pone el otro desde compnentes com como te indiqué mas abajo :D

EDITO: jaja electro si pensás que el va a entender como hacerlo con lo que pusiste, estás loco.

La idea es hacerlo de la forma que el comprenda como trabaja, y me decis a mi que lo estoy liando... con un simple for busco TODO en un Webbrowser, no veo necesidad de hacer MAS, me parece que no es lo que pretendemos al programar, eficacia... siempre por encima de todo :D






« Última modificación: 12 Junio 2013, 21:01 pm por XresH » En línea

[ - Si eres programador y quieres que tus proyectos esten en mi blog(con o sin source), consúltame! - ]
Entra A Mi Blog De Programación | | Dudas en este post :| | >>Clic para ir al Post<<
z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #11 en: 12 Junio 2013, 20:59 pm »

Estás liando al pobre chaval xD

El WebBrowser es un componente por defecto, quiero decir que ya está agregado en el Toolbox, no es necesario elegirlo en los componentes ocultos del COM
(Al menos en la IDE del VS2012 que es la que usa Ikillnukes)


Eso he pensado yo... Pero es que no me aclaro xD

Estás seleccionando el WebBrowser equivocado.

Por eso los errores, es eso.

Pone el otro desde compnentes com como te indiqué mas abajo :D






Como otro? LOL

Un saludo.



He estado observando, si le meto un WebBrowser.Click, con que haga clic en cualquier lado del WebBrowser dará para hacer la función no?


« Última modificación: 12 Junio 2013, 21:02 pm por Ikillnukes » En línea


Interesados hablad por Discord.
XresH


Desconectado Desconectado

Mensajes: 384



Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #12 en: 12 Junio 2013, 21:03 pm »

en el cuadro de herramientas, clic derecho.. seleccionar elementos o elegir no me acuerdo xD vas a componentes com y buscas Webbrowser....

Te aparece otro.. no te lo digo porque si, es más sencillo que usar que el por defecto, pero si queres complicarte... es tu decisión, no me meto mas.


Saludos.
En línea

[ - Si eres programador y quieres que tus proyectos esten en mi blog(con o sin source), consúltame! - ]
Entra A Mi Blog De Programación | | Dudas en este post :| | >>Clic para ir al Post<<
z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #13 en: 12 Junio 2013, 21:06 pm »

Y esto?

http://www.dreamincode.net/forums/topic/169683-advanced-webbrowser-contextmenu/

También tenía esto:

Código
  1. Private Sub WebBrowser1_Navigating(ByVal sender As Object, ByVal e As System.Windows.Forms.WebBrowserNavigatingEventArgs) Handles WebBrowser1.Navigating
  2.    If MsgBox("You are trying to go to:" & vbCr & e.Url.ToString() & vbCr & "Cancel Navigate?", MsgBoxStyle.YesNo) = MsgBoxResult.Yes Then
  3.        e.Cancel = True
  4.    End If
  5. End Sub

La verdad es que me estoy complicando yo solo...

Podría poner un getelementbyname y poner un name igual para todos los controles que se pudiese detectar...

Ahora si... Cuando seleccione un ModPack tendría que setearse una variable para que cogiese el name de dicho form, no se si me captais ;-)



También podría hacer que con javascript se cambiase el name del form, y hay pondría una condición si se cumple, se empezaría a realizar la función a la que estuviese indexada ese name ;-)
« Última modificación: 12 Junio 2013, 21:12 pm por Ikillnukes » En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.822



Ver Perfil
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #14 en: 12 Junio 2013, 21:16 pm »

¿Puedes centrarte en lo que te dije?:

Citar
Está claro que con los eventos del WebBrowser no vas a poder
Punto 1: Olvida el CLICK del WebBrowser.

tienes que hacerlo con los eventos del documento, el cual tiene un evento llamado CLICK ...
Punto 2: Bienvenido al evento CLICK del documento.

Citar
Punto 3: Mírate el código, leelo, examinalo, fíjate en los eventos disponibles del document y usa el evento click de ese objeto.

Citar
tienes que handlear el evento click del documento a un sub, y en ese sub lo que debes hacer es comprobar el tipo de elemento que se ha clickado, si es un botón pues lanzas un msgbox.
Punto 4: Intenta hacerlo, con la url debería ser más que suficiente, pero bueno, una pista extra:

http://msdn.microsoft.com/en-us/library/eday44cc.aspx
http://msdn.microsoft.com/en-us/library/system.windows.forms.htmlelement_events.aspx
http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.activeelement.aspx


« Última modificación: 12 Junio 2013, 21:21 pm por EleKtro H@cker » En línea

z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #15 en: 12 Junio 2013, 21:19 pm »

Al punto 4 es al que más miedo le tengo. xD



Hasta ahora he llegado a:

Código
  1. Public Class frmModPacks_Web
  2.    Private Sub frmModpacks_Web_Load(sender As Object, e As EventArgs) Handles MyBase.Load
  3.  
  4.        Dim prueba As String = Me.WebBrowser1.Document.GetElementById("nombre").GetAttribute("Value")
  5.  
  6.        WebBrowser1.Navigate("http://ikillcraft.a0001.net/modpacks.php")
  7.    End Sub
  8.  
  9.    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
  10.        Dim document As HtmlDocument = WebBrowser1.Document
  11.  
  12.        'Attach Click event handler
  13.        AddHandler document.Body.Click, New HtmlElementEventHandler(AddressOf WebBrowser1_Click)
  14.    End Sub
  15.  
  16.    Private Sub WebBrowser1_Click(ByVal sender As Object, ByVal e As HtmlElementEventArgs)
  17.        MsgBox("Hola")
  18.    End Sub
  19. End Class

Y ya tengo un problema el WebBrowser se carga en blanco :-\



EDITO: El problema está en:

Código
  1.        Dim prueba As String = Me.WebBrowser1.Document.GetElementById("nombre").GetAttribute("Value")

No sé porqué. :-\



DUDA:

Citar
WebBrowser1.Document.GetElementById("login-submit").InvokeMember("click")

Sirve de algo?
« Última modificación: 12 Junio 2013, 21:29 pm por Ikillnukes » En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.822



Ver Perfil
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #16 en: 12 Junio 2013, 21:47 pm »

Bonito copy/paste,
Sigue investigando el código de la url que te puse, te doy otra pista!:

Código
  1.    Private Sub Document_Clicked(ByVal sender As Object, ByVal e As HtmlElementEventArgs)
  2.        MsgBox(sender.ActiveElement.TagName)
  3.        MsgBox(sender.ActiveElement.Id)
  4.        MsgBox(sender.ActiveElement.Name)
  5.        MsgBox(sender.ActiveElement.OuterText)
  6.    End Sub

PD: Donde el objeto sender es de tipo "HtmlDocument", NO de tipo HtmlElement como está en tu código de arriba.

EDITO:
Código
  1. If sender.ActiveElement.TagName.tolower = "button" then...
  2. If sender.ActiveElement.TagName.tolower = "input" then...
« Última modificación: 12 Junio 2013, 21:54 pm por EleKtro H@cker » En línea

z3nth10n


Desconectado Desconectado

Mensajes: 1.583


"Jack of all trades, master of none." - Zenthion


Ver Perfil WWW
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #17 en: 12 Junio 2013, 21:51 pm »

Copy/paste, anda ya xD

Si lo unico que mas he copipasteado ha sido esto:

Código
  1.    Private Sub WebBrowser1_DocumentCompleted(ByVal sender As System.Object, ByVal e As Windows.Forms.WebBrowserDocumentCompletedEventArgs) Handles WebBrowser1.DocumentCompleted
  2.        Dim document As HtmlDocument = WebBrowser1.Document
  3.  
  4.        'Attach Click event handler
  5.        AddHandler document.Body.Click, New HtmlElementEventHandler(AddressOf WebBrowser1_Clicked)
  6.    End Sub

A ver...

Tengo esto:

Código
  1.    Private Sub WebBrowser1_Clicked(ByVal sender As Object, ByVal e As System.Windows.Forms.HtmlElementEventArgs)
  2.        MsgBox(sender.ActiveElement.Document.GetElementById("login-submit").InvokeMember("click"))
  3.    End Sub

EDITO:

Entonces, que dejo un HtmlElement en vez de un HtmlDocument? :silbar:



EDITO:

No soy tan pro como tu... Necesito más help >:D
Por no decir que no se que es lo que significan la mitad de las cosas que hay en los codes :-\
« Última modificación: 12 Junio 2013, 22:14 pm por Ikillnukes » En línea


Interesados hablad por Discord.
Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.822



Ver Perfil
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #18 en: 13 Junio 2013, 00:27 am »

no se que es lo que significan la mitad de las cosas que hay en los codes :-\

Pues ya tienes tarea de sobra, ¿no?

...En el MSDN tienes lo que significa cada propiedad y método del HtmlDocument y HtmlElement, si no sabes lo que significan o como mínimo no te puedes hacer una idea de lo que significan es porque no quieres.

Yo no soy un Pro, pero lo que no puede ser es que sin saber el puto lenguaje quieras hacer una aplicación de grandes dimensiones sin tener ni idea de como usar el lenguaje de forma básica, y que encima ya tengas media aplicación acabada donde el 90% del código es puro copy/paste del esfuerzo de los demás usuarios como Xresh o yo, y que no sepas que significa nada de lo que te mostramos ni tampoco te intereses por saber que significa, eso es lo peor de todo.

¿Estamos locos o que?, ya basta Ikillnukes, si no quieres aprender pues me parece perfecto, no aprendas, pero entonces tampoco hagas mil preguntas sobre como se hacen las cosas puesto que reálmente no quieres aprender como se hacen las cosas, quieres que te lo den hecho.

Empieza por estudiar los términos básicos de VBNET, los operadores y las cosas básicas, lo que significan las propiedades, los métodos, los eventosd, los data types, aprende a leer los malditos eventos y propiedades de los objetos y sus descripciones, que no es tán dificil joder, un miserable click te cuesta leer las descripciones, en fín aprende un poco a manejar el lenguaje por ti mismo y luego ya cuando sepas símplemente lo básico entonces puedes probar a desarrollar tu primera aplicación, una aplicaicón que la hayas hecho tú, con o sin ayuda de usuarios como nosotros, pero donde la mayor parte del código séa tuyo, una aplicación realista y no este tipo de aplicación que "estás haciendo tú"...

...Se te escapa de las manos todo lo qe te comentamos y lo que te explicamos, no estás capacitado para hacer este "launcher" aunque te proporcionemos ayuda, porque es demasiado para tu nivel de conocimientos del lenguaje, así que te sugiero que PARES, que recapacites, que empieces a aprender el maldito lenguaje desde cero, cosa que todavía no te ha dado la gana hacer, y ya para entonces cuanto estés un poco más instruido podremos ayudarte mejor.

Saludos.



EDITO:

En fín aqui cada uno empieza sin tener ni p**a idea del lenguaje, todos empezamos sin saber, pero todos los que reálmente queremos aprender nos dignamos a investigar lo que significa cada cosa.

Para serte sincero... es mi opinión, y solo mi opinión, pero yo preferiría 1.000 veces que un usuario llenase el foro de preguntas de este tipo:

"¿Me explican este código entero?", "¿Me explican que significa esto?", "¿Me explican para que sirve esto otro?", "¿Me explican como puedo mejorar este código?".

Porque al menos el tipo de pregunta denota que la persona está interesada en aprender algo.

...En cambio tu lo que haces es esperar que otras personas como por ejemplo yo te saquemos de todos los apuros, de todos. Los demás invertimos tiempo, te ayudamos (quiero decir, te lo damos hecho), pero tu sigues sin querer aprender y abusando, porque pedir es fácil.

...Si no sabes lo que significa alguna parte de un código (Como has comentado en tu último post) siempre puedes formular tu pregunta en el foro para que te expliquemos lo que significa eso que no sepas, y de esa manera APRENDAS.
« Última modificación: 13 Junio 2013, 00:48 am por EleKtro H@cker » En línea

SγиtαxEяяoя

Desconectado Desconectado

Mensajes: 154


Ver Perfil
Re: Realizar función al hacer click en un input button de un WebBrowser?
« Respuesta #19 en: 13 Junio 2013, 00:46 am »

Crei que nunca llegaria el dia en que alguien se ponga enserio y le dijera sus verdades, no soy un experto en .NET (quiero serlo) pero trato de hacer lo posible por entender las propiedades, no solo copiar y pegar..  :-[

Como dice Xresh Entender el Codigo es lo importante

no abusar de la ayuda que te esta dando EleKtro o Xresh

Valla, y creia que tenias las capacidades de entender las cosas  :silbar: veo que me equivoque...  :-\ :-\ :(

Ahora se cambiaron los papeles... y pensar que yo era el que me sentia una molestia por preguntar :huh: :huh: ;)
« Última modificación: 13 Junio 2013, 00:51 am por SγиtαxEяяoя » En línea

Páginas: 1 [2] 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines