Problemas con CreateGraphics

16/01/2006 - 17:36 por jorge | Informe spam
Estoy sustituyendo Print de VB por CreateGraphics, para diseñar un programa
que llene aleatoriamente un arreglo unidimensional con 10 numeros enteros
comprendidos entre 1 y 100. Para luego buscar un elemento del arreglo y si lo
encuentra el programa debera indicar el indice del elemento.
Pero tengo problemas con esta parte del codigo:

CreateGraphics(Space(5) & A(I)) manifiesta en este error que hay Demasiados
argumentos para 'Public Function CreateGraphics() As System.Drawing.Graphics'.
y por:
CreateGraphics ((Space(5)) & "El Indice del Numero buscado es:";Indice
manifiesta lo mismo y por el punto y coma antes de la palabara "Indice" que
el caracter no es valido.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Max = 100
Min = 1
CreateGraphics()
CreateGraphics()
CreateGraphics()
'Proceso
For I = 1 To 10
A(I) = Int((Max - Min + 1) * Rnd() + Min)
CreateGraphics(Space(5) & A(I))
Next
End Sub



Private Sub ButtonBuscar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles ButtonBuscar.Click
Indice = 0
For I = 1 To 10
If (A(I) = Val(textboxBusqueda.text)) Then
Indice = I
End If
Next
If (Indice <> 0) Then
MsgBox("Numero encontrado", MsgBoxStyle.Information, "Arreglos")
CreateGraphics()
CreateGraphics ((Space(5)) & "El Indice del Numero buscado
es:";Indice
Else
MsgBox("El numero buscado no existe en el
arreglo",MsgBoxStyle .Critical, "Arreglos")
End If
End Sub


Dim Num As Integer
Dim Max As Integer
Dim Min As Integer
Dim Indice As Integer
Dim Numero As Integer
Dim I As Integer
Dim A(10) As Integer

Preguntas similare

Leer las respuestas

#1 A.Poblacion
16/01/2006 - 18:42 | Informe spam
"jorge" wrote in message
news:
Pero tengo problemas con esta parte del codigo:

CreateGraphics(Space(5) & A(I)) manifiesta en este error que hay
Demasiados
argumentos para 'Public Function CreateGraphics() As
System.Drawing.Graphics'.
y por:
CreateGraphics ((Space(5)) & "El Indice del Numero buscado es:";Indice
manifiesta lo mismo y por el punto y coma antes de la palabara "Indice"
que
el caracter no es valido.



Creo que has entendido mal lo que hace el "CreateGraphics". No sirve
para escribir un texto, sino para crear el "papel de fondo" sobre el que vas
a dibujar. El CreateGraphics solo se ejecuta una vez, y te devuelve un
objeto de tipo Grahics. A continuación ya no se vuelve a ejecutar el
CreateGraphics, sino que se usa el objeto que te ha devuelto para ejecutar
instrucciones gráficas de GDI+, como por ejemplo DrawString para escribir
textos, que aparentemente es lo que te interesa a la vista del código que
has escrito.
Respuesta Responder a este mensaje
#2 Jesús Villalobos
16/01/2006 - 19:08 | Informe spam
Print no se puede sustituir con CreateGraphics. La impresión en .NET
funciona de forma completamente diferente a como funciona en VB antiguo.

Si quieres imprimir has de utilizar un objeto PrintDocument, lanzarlo
mediante PrintDocument.Print y codificar en el evento PrintPage lo que
quieres imprimir en cada página:

Private Sub Button1_Click(...) Handles Button1.Click

Me.PrintDocument1.Print

End Sub

Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As
System.Drawing.Printing.PrintPageEventArgs) Handles PrintDocument1.PrintPage

With e

.Graphics.DrawString(Me.TextBox1.Text, New
System.Drawing.Font("Lucida Console", 8, FontStyle.Underline),
System.Drawing.Brushes.Blue, 0, 5)

End With

End Sub

La cosa es más compleja de lo que te envío, mírate el objeto PrintDocument y
el namespace System.Drawing.Printing en la ayuda.


"jorge" escribió en el mensaje
news:
Estoy sustituyendo Print de VB por CreateGraphics, para diseñar un
programa
que llene aleatoriamente un arreglo unidimensional con 10 numeros enteros
comprendidos entre 1 y 100. Para luego buscar un elemento del arreglo y si
lo
encuentra el programa debera indicar el indice del elemento.
Pero tengo problemas con esta parte del codigo:

CreateGraphics(Space(5) & A(I)) manifiesta en este error que hay
Demasiados
argumentos para 'Public Function CreateGraphics() As
System.Drawing.Graphics'.
y por:
CreateGraphics ((Space(5)) & "El Indice del Numero buscado es:";Indice
manifiesta lo mismo y por el punto y coma antes de la palabara "Indice"
que
el caracter no es valido.

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Max = 100
Min = 1
CreateGraphics()
CreateGraphics()
CreateGraphics()
'Proceso
For I = 1 To 10
A(I) = Int((Max - Min + 1) * Rnd() + Min)
CreateGraphics(Space(5) & A(I))
Next
End Sub



Private Sub ButtonBuscar_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles ButtonBuscar.Click
Indice = 0
For I = 1 To 10
If (A(I) = Val(textboxBusqueda.text)) Then
Indice = I
End If
Next
If (Indice <> 0) Then
MsgBox("Numero encontrado", MsgBoxStyle.Information,
"Arreglos")
CreateGraphics()
CreateGraphics ((Space(5)) & "El Indice del Numero buscado
es:";Indice
Else
MsgBox("El numero buscado no existe en el
arreglo",MsgBoxStyle .Critical, "Arreglos")
End If
End Sub


Dim Num As Integer
Dim Max As Integer
Dim Min As Integer
Dim Indice As Integer
Dim Numero As Integer
Dim I As Integer
Dim A(10) As Integer
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida