Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Alex Rodríguez

Páginas: 1 ... 79 80 81 82 83 [84] 85 86 87 88 89 ... 93
1662
Me he creado una cuenta para mirarlo y no he visto la opción pero he visto que tiene net2ftp. Puedes hacer lo siguiente para descomprimir en servidor:

1.   Subir el fichero por ftp al sitio.
2.   Entrar en http://www.net2ftp.com/
3.   Acceder con los datos a nuestra cuenta ftp. Server, username y password.
4.   En el panel de control seleccionamos el fichero y le damos a unzip en la parte derecha del menú. (Dependiendo de la carga del servidor puede ser necesario incluso esperar un tiempo, pero en principio es más rápido que subir todo los ficheros por ftp sobre todo si son muchos archivos y la conexión de internet no es muy rápida).

Saludos.

1663
Normalmente en el panel de administración ofrecen dos o tres administradores de archivos alternativos, por ejemplo File Manager 1 y File Manager 2, o incluso FTP file manager, trata de mirar todas las alternativas para manejo de archivos que tengas y ver si alguno te ofrece "unzip" o "extract" o similar, la opción de descompresión.

1664
Normalmente la opción está en el administrador de archivos, aunque hay algunos hosting que no lo permiten (especialmente si es un hosting gratuito)

1665
Al fin he podido compilar. Lo que he visto te comento...

El HashMap mapa contiene los pares de valores ciudad (clave) y lista de enteros que representan las temperaturas tal y como vienen en los datos de entrada, sin ordenación adicional (valor u objeto asociado). Importante: si operas sobre la lista de enteros modificas el map, ambos contienen la misma referencia, más abajo te comento más.

lineas es un objeto Iterator que contiene cada una de las líneas del fichero de entrada

Veo que creas un objeto Iterable y luego usas for extendido (for each) para recorrer las colecciones de elementos. Esto no lo veo correcto, no digo que no se pueda hacer así sino que yo no lo haría así. En principio usar Iterable será para usar un iterador para recorrer la colección. Usar un iterador es una forma segura de recorrer una colección y poder manipular al mismo tiempo la colección sin alterar el recorrido de la misma. Un for extendido es una forma no segura de recorrido y se aplicaría en ciertos casos cuando es viable.

He modificado el código para basarme en el uso de iteradores. Además uso un contador para saber en qué línea me encuentro así como en qué elemento dentro de la línea. Si estamos en el elemento 1 de la línea ya sabemos que es la ciudad y a partir de ahí se puede determinar si aparece en el mapa (con containskey) o no.

Lo primero es determinar si la ciudad está en el mapa o no, ya que el tratamiento tendrá que ser distinto.

Una cuestión importante es que no podemos hacer un clear del objeto List que almacena los valores en el mapa porque si hacemos el clear borramos el contenido previo del mapa ¿Por qué? Porque el mapa contiene el objeto (la misma referencia que el list). Si borramos el list, dejamos vacío el contenido del mapa. Creo que esto quizás fuera uno de los errores que tuvieras en el anterior código, aunque tampoco lo he mirado con detenimiento.

Creo que el código que te pongo un poco más abajo resuelve lo que querías. Tiene líneas con impresión del proceso que se pueden borrar.

Compruébalo, ya me comentas cuando lo hayas revisado.

Saludos.

Código de la clase:

Código: [Seleccionar]
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.SortedSet;
import java.util.TreeSet;

import com.google.common.collect.Ordering;

public class ClimaGroenlandiaImpl implements ClimaGroenlandia {
    // TODO Apartado a
    // Atributo:
    private Map <String , List<Integer>> mapa;
    // El constructor crea el Map vacío
    public ClimaGroenlandiaImpl(){
        mapa = new HashMap <String , List<Integer>>();
    }
    // TODO Apartado b
    public void cargaFichero(String nombreFichero) {

        boolean ciudadEstaEnMapa = false; // AÑADIDO APR
        String keyParaElMap =""; //AÑADIDO APR

        // Creamos un Iterable<String> a partir del nombre de fichero con el
        // método from con un argumento de Iterables2
        // TODO
        List<String> listaStr = new ArrayList<String>();

        Iterable<String> lineas = Iterables2.from(nombreFichero);

        Iterator<String> iteradorLineasApr = lineas.iterator(); //iterador para obtener las líneas
        int i=1;
        while (iteradorLineasApr.hasNext()){

            //Tenemos que crear un nuevo objeto para evitar borrar contenidos previos del map
            List<Integer> listaInt = new ArrayList<Integer>();

            String lineaExtraida = iteradorLineasApr.next();

            System.out.println("Valor de línea " + i + ": " + lineaExtraida);

            Iterable<String> itemsEnUnaLinea = Iterables2.from(lineaExtraida, ",");
            Iterator<String> iteradorItemsEnUnaLineaApr = itemsEnUnaLinea.iterator(); //iterador para obtener cada item dentro de una línea

            int j=1;
            while (iteradorItemsEnUnaLineaApr.hasNext()){

                String itemExtraido = iteradorItemsEnUnaLineaApr.next();

                //Si es el primer item extraído es la ciudad, tenemos que comprobar si ya está en el map
                if (j==1) {
                    keyParaElMap = itemExtraido;
                    if (mapa.containsKey(itemExtraido)) {
                        System.out.println("La ciudad ESTÁ EN EL MAPA, habrá que actuar en consecuencia");
                        ciudadEstaEnMapa = true;
                        // System.out.println("Valor de keyParaElMap es" + keyParaElMap);
                        // System.out.println("Contenido del map "+ mapa.get (keyParaElMap).toString());
                    }
                    else {
                        System.out.println("La ciudad no está en el mapa, habrá que actuar en consecuencia");
                        ciudadEstaEnMapa = false;
                    }
                }

                System.out.println("Valor de item "+j+": "+ itemExtraido);
                if (j>1) {
                    listaInt.add(Integer.parseInt(itemExtraido));

                }

                j = j+1;
            } //FIN DEL BUCLE WHILE INTERNO RECORRIDO DE ITEMS

            //Una vez terminado el recorrido actuamos según la key esté en el map o no
            if (ciudadEstaEnMapa == true) {
                List<Integer> listaTmp = new ArrayList<Integer>(mapa.get (keyParaElMap));
                for( Integer enteroDeLista:listaInt ){
                    listaTmp.add(enteroDeLista);
                }
                mapa.put (keyParaElMap, listaTmp);

            }
            else {
                mapa.put (keyParaElMap, listaInt);

            }

            i = i+1;
        }

        System.out.println("===============================================");
        Iterator it = mapa.entrySet().iterator();
        while (it.hasNext()) {
            Map.Entry e = (Map.Entry)it.next();
            System.out.println(e.getKey() + " " + e.getValue());
        }

    }//fin del metodo

    // TODO Apartado c
    public Integer temperaturaMinima() {
        Integer minima = null;
        // Creamos un Ordering
        // TODO
        // Iteramos sobre todas las temperaturas, que son las listas del Map:
        // TODO
        // Encontramos el mínimo de cada lista
        // TODO
        // Y vemos si es el primero o si ha superado el menor encontrado
        // hasta el momento
        // TODO

        return minima;
    }

    // TODO Apartado f
    // public String municipioConMayorDiferenciaTemperaturas() {
    // // TODO
    // // Utilizando Ordering, sería:
    // // Ordering<String> ordCmp = Ordering.from(cmp);
    // // String municipioMaxDif = ordCmp.max(temperaturasMunicipios.keySet());
    // return municipioMaxDif;
    // }

    // TODO Apartado g
    // public SortedSet<String> municipiosBajo(Integer temp) {
    // // Se crea el conjunto ordenado
    // // TODO
    // // Se itera sobre los municipios, que son las claves del Map
    // // TODO
    // // Se obtiene la lista de temperaturas correspondientes a cada
    // // municipio
    // // TODO
    // // Y si su temperatura es menor que la dada, se añade al conjunto
    // // ordenado de salida
    // // TODO
    // return ss;
    // }
}

Resultado obtenido al ejecutar:

Código: [Seleccionar]
===============================================
Sermersooq [-42, -4, 3, 11, 0, 17, 20, -14, -40, -14, 3, 13, 22, 19, 20, -50]
Qaasuitsup [-2, -14, 3, 4, -19, -4, 3, 22, 11, 15, 20, -23]
Kujalleq [-12, -4, 3, 5, -20, -37, -26, -11, 3, 17, 10, 13, 20, -31]
Qeqqata [-19, -5, 3, 12, 20, 15, 20, -34, -33, -23, 3, 15, 0, 15, 20, -40]
Temperatura mínima: null

1666
Sigo teniendo problemas para compilar en concreto errores en:

a) public class TestGroenlandia extends Test ¿Cuál es la clase Test?

b) import types.ListType; ¿Cuál es la clase types?

c) import utils.Lists; ¿Cuál es la clase Lists?

1667
Estoy intentando compilarlo y me encuentro dos problemas adicionales:

a) Se declara: public class ClimaGroenlandiaImpl implements ClimaGroenlandia pero creo que no has puesto el código de la clase ClimaGroenlandia

b) Indicas que hay una clase principal pero ¿dónde está el método principal public static void main (String [ ] args)  ...

Saludos

1668
He visto el post pero no tengo claro algunas cuestiones:

¿Dices que tienes un problema con el map pero cuál es el problema concreto que tienes?

Estás usando el Guava framework (com.google.common.base), ¿qué versión o desde dónde lo has descargado?

¿Qué versión de Java estás usando?

Y finalmente, si pudieras pegar el código usando el botón # del editor que te introduce las etiquetas [code ] [ /code] mejor, porque al pegar como texto aparecen algunos emoticonos y se pierde el código

Al usar el botón # el código aparecerá así:

Código: [Seleccionar]
Aquí el código
Saludos

1669
Hola Lilasy, no entiendo bien qué es lo que necesitas hacer, de todas formas te doy un par de referencias que pienso te pueden ser útiles:

Curso de Visual Basic con ejemplos: https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=37&Itemid=61

Hilo del foro donde se habla de cómo programar un sistema de nóminas con horas extra, horas trabajadas, etc. en Visual Basic: https://www.aprenderaprogramar.com/foros/index.php?topic=604.0

Si explicas un poco mejor lo que tienes y lo que necesitas quizás te pueda ayudar más específicamente. Saludos.


1670
Me alegro, ya podrás revisarlo con tiempo para corregir las cosas que te faltaran. En el curso que te indiqué tienes bastantes cosas aunque ahí no viene la parte de bases de datos.

1672
Para responder un mensaje no le des al botón "Citar" sino al botón "Responder" que aparece en la parte de abajo, ya que si le das a citar repites todo lo que puse anteriormente. Lo primero de todo ¿has añadido los campos en la tabla con phpMyAdmin? (SUELDOQUINCENAL Y SUELDOMENSUAL)

1673
Aquí tienes un curso donde se explican fundamentos de programación y pseudocódigo: https://www.aprenderaprogramar.com/index.php?option=com_content&view=category&id=28&Itemid=59

El pseudocódigo para el programa que indicas podría ser este:

Código: [Seleccionar]
Inicio
Mostrar ("Introduzca el identificador del trabajadador")
Pedir Identificador

Si TipoTrabajador(Identificador) = "Doctor" Entonces
Sueldo(Identificador) = SueldoBaseDoctor + 50 * horasConsulta(Identificador)
FinSi

Si TipoTrabajador(Identificador) = "Doctor" y horasConsulta(Identificador) < 10 Entonces
Sueldo(Identificador) = Sueldo(Identificador) * 0,90  [Comentario: aplicamos el descuento del 10 % ]
FinSi

Si TipoTrabajador(Identificador) = "Administrativo"
Sueldo(Identificador) = SueldoBaseAdmvo 
horasExtra(Identificador) = horasTotales(Identificador) - 50
FinSi



Si TipoTrabajador(Identificador) = "Administrativo" y horasExtra(Identificador) > 0 Entonces
Sueldo(Identificador) = SueldoBaseAdmvo * 1,15 [ Comentario: aplicamos 15 % de beneficios] 
FinSi

Sueldo(Identificador) = Sueldo(Identificador) * 0,88 [Comentario: aplicamos descuento del 12 %]

Mostrar "El sueldo a pagar al trabajador con identificador", Identificador, "es de ", Sueldo(Identificador), " soles"


1674
Eso de bajar la mira en counter strike... anti recoil. He estado viendo algo y hay varias maneras de hacerlo. Aquí por ejemplo presentan un código en Visual Basic: http://www.rohitab.com/discuss/topic/16390-new-cs-anti-recoil/

Pero realmente lo que están haciendo es interaccionar con el API de Windows, es decir, interaccionar con el sistema operativo. Para ello se pueden usar diferentes lenguajes además de Visual Basic, por ejemplo C++. Aquí también comentan algo: http://www.mpcforum.com/showthread.php?17374-Building-anti-recoil-discussion-and-source-code

Código: [Seleccionar]
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal Y As Long) As Long
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer

Private Const VK_LBUTTON = &H1
Private Const VK_PGDN = &H22
Private Const VK_PGUP = &H21
Private Const VK_END = &H23
Private Const VK_HOME = &H24
Private Const VK_PLUS = &HBB
Private Const VK_MINUS = &HBD
 
Private Type POINTAPI
X As Long
Y As Long
End Type
Dim Coil As POINTAPI
Dim EX As Long
Dim WHY As Long
Dim Pixel As String

Sub CoilMinus()
Dim Speed
Speed = Timer1.Interval
Speed = Speed - 1
If Speed = 0 Then
Speed = 1
End If
Timer1.Interval = Speed
Label1.Caption = " Recoil Speed:" & Speed
End Sub

Sub CoilPlus()
Dim Speed
Speed = Timer1.Interval
Speed = Speed + 1
If Speed = 101 Then
Speed = 100
End If
Timer1.Interval = Speed
Label1.Caption = " Recoil Speed:" & Speed
End Sub

Sub PixelPlus()
Pixel = Pixel + 1
If Pixel = 101 Then
Pixel = 100
End If
Label2.Caption = " Pixels:" & Pixel
End Sub

Sub PixelMinus()
Pixel = Pixel - 1
If Pixel = 0 Then
Pixel = 1
End If
Label2.Caption = " Pixels:" & Pixel
End Sub

Private Sub Mouse()
AntiRecoil = GetCursorPos(Coil)
EX = Coil.X
WHY = Coil.Y
Call SetCursorPos(EX, WHY + Pixel)
End Sub

Private Sub Command1_Click()
Pixel = 1
Timer1.Enabled = True
Label1.Caption = " Recoil Speed:" & Timer1.Interval
Label2.Caption = " Pixels:" & Pixel
End Sub

Private Sub Form_Load()
Label1.Caption = " Recoil Speed:0"
Label2.Caption = " Pixels:" & 0
End Sub

Private Sub Timer1_Timer()
If GetAsyncKeyState(VK_HOME) = -32767 Then
Pixel = 1
Timer1.Enabled = True
Label1.Caption = " Recoil Speed:" & Timer1.Interval
Label2.Caption = " Pixels:" & Pixel
End If
If GetAsyncKeyState(VK_END) = -32767 Then
Pixel = 0
Timer1.Enabled = False
Label1.Caption = " Recoil Speed:" & "0"
Label2.Caption = " Pixels:" & "0"
End If
If GetAsyncKeyState(VK_LBUTTON) < 0 Then
Mouse
End If
If GetAsyncKeyState(VK_PLUS) = -32767 Then
PixelPlus
End If
If GetAsyncKeyState(VK_MINUS) = -32767 Then
PixelMinus
End If
If GetAsyncKeyState(VK_PGDN) = -32767 Then
CoilMinus
End If
If GetAsyncKeyState(VK_PGUP) = -32767 Then
CoilPlus
End If
End Sub

1675
Al final he conseguido ejecutar la aplicación, y también guardar asignaciones.


Si miras las asignaciones en la pantalla de asignaciones tienes los siguientes datos:

1 SUELDOQUINCENAL
2 SUELDOMENSUAL
3 BONOPORASISTENCIA
4 HORASEXTRAS
5 BONOVACACIONAL
6 COMISIONES
7 BONONOCTURNO
8 DIASFERIADOS
9 PRIMADERESPONSABILIDAD
10 PRIMAPROFESIONALIZACION
11 PRIMADETRANSPORTE

Estos son los datos que el programa intenta introducir en la base de datos. ¿Qué ocurre? Que en la base de datos los campos que existen en la tabla asignacionesdeempleados son estos:

CEDULA
NOMBRES
APELLIDOS
SUELDO
3 BONOPORASISTENCIA
4 HORASEXTRA
5 BONOVACACIONAL
6 COMISIONES
7 BONONOCTURNO
8 DIASFERIADOS
9 PRIMADERESPONSABILIDAD
10 PRIMAPROFESIONALIZACION
11 PRIMADETRANSPORTE



Como ves en la tabla en MySql te faltan estos campos:

1 SUELDOQUINCENAL
2 SUELDOMENSUAL

Tú intentas introducir datos en estos campos usando Visual Basic, pero en la base de datos no existen estos campos y entonces te salta un error. Luego resulta que esos datos están en otra tabla, pero si los quieres guardar en otra tabla tendrías que hacer otra operación de guardado.

Suponiendo que los vamos a guardar en la misma tabla, vete a phpMyAdmin y accede a la tabla asignacionesdeempleados, pulsa en "Estructura", luego en añadir un campo después de SUELDO y crea un campo de nombre SUELDOQUINCENAL y tipo int con longitud/valores 10 de modo que será int(10). Haz lo mismo y crea SUELDOMENSUAL

Además tienes otro problema en el código. Tú en el código del formulario asignaciones tienes esto:

    If tabla.EOF = True Then
        tabla.AddNew
    tabla!SUELDOQUINCENAL = SUELDOQUINCENAL
    tabla!SUELDOMENSUAL = SUELDOMENSUAL
    tabla!BONOPORASISTENCIA = TextBonoAsistencia
    tabla!HORASEXTRAS = TextHorasExtra
    tabla!BONOVACACIONAL = TextVacaciones
    tabla!COMISIONES = TextComisiones
    tabla!BONONOCTURNO = TextBonoNocturno
    tabla!DIASFERIADOS = TextDiasFeriados
    tabla!PRIMADERESPONSABILIDAD = TextPrimaderesponsabilidad
    tabla!PRIMAPROFESIONALIZACION = TextPrimaProfesionlizacion
    tabla!PRIMADETRANSPORTE = textPRIMATRANSPORTE
    tabla.Update
    tabla.Close

Pero en la base de datos con phpMyAdmin el campo no se llama HORASEXTRAS acabado en S sino simplemente HORASEXTRA. En el código tiene que ir exactamente el mismo nombre, por tanto hay que poner

tabla!HORASEXTRA = TextHorasExtra

Porque si no no hay correspondencia exacta y no funcionará.


Más cosas a arreglar: el código dice

Set tabla = New ADODB.Recordset
    sql = "select * from datosdeempleados where CEDULA="" & txtcedula & """
    tabla.Open sql, cn, adOpenDynamic, adLockOptimistic
    If tabla.EOF = True Then
        tabla.AddNew
    tabla!SUELDOQUINCENAL = SUELDOQUINCENAL

Pero la tabla en la que se quiere guardar no es datosdeempleados sino asignacionesdemepleados, luego hay que modificar esto para apuntar a la tabla que queremos:

sql = "select * from asignacionesdeempleados where CEDULA="" & txtcedula & """



Más cosas a arreglar:

sql = "select * from datosdeempleados where CEDULA="" & txtcedula & """

Sobran comillas:

sql = "select * from datosdeempleados where CEDULA=" & txtcedula & ""



Más cosas a arreglar: los valores numéricos hay que indicar que son numéricos añadiendo VAL("nombreDelTextBox") porque si no no coincide el tipo de dato.


Mírate esto si quieres: https://www.aprenderaprogramar.com/index.php?option=com_content&view=article&id=203:la-funcion-val-con-visual-basic-para-transformar-texto-en-valores-numericos-ejemplo-de-uso-cu00318a&catid=37:curso-qprogramacion-en-visual-basic-nivel-iq&Itemid=61


Más cosas a arreglar:

Private Sub GuardarDatos2_Click()

Falta incluir un argumento para esta función: Private Sub GuardarDatos2_Click(Index as Integer)

Además hay que asignarle un Index al botón, para ello en la ventana de diseño del formulario tienes que pulsar sobre el botón y en el cuadro de propiedades poner en la casilla Index un número 0, y al botón Calcula total ponerle index 1



Con todos los cambios el código es este en el form de Asiginaciones1:

Código: [Seleccionar]
Private Sub GuardarDatos2_Click(Index As Integer)
MsgBox "Se ejecuta", vbInformation

Set tabla = New ADODB.Recordset
    sql = "select * from asignacionesdeempleados where CEDULA=" & txtcedula & ""
    tabla.Open sql, cn, adOpenDynamic, adLockOptimistic
    If tabla.EOF = True Then
        tabla.AddNew
        tabla!CEDULA = txtcedula
        tabla!NOMBRES = ""
        tabla!APELLIDOS = ""
       tabla!SUELDO = 0
    tabla!SUELDOQUINCENAL = Val("SUELDOQUINCENAL")
    tabla!SUELDOMENSUAL = Val("SUELDOMENSUAL")
    tabla!BONOPORASISTENCIA = Val("TextBonoAsistencia")
    tabla!HORASEXTRA = Val("TextHorasExtra")
    tabla!BONOVACACIONAL = Val("TextVacaciones")
    tabla!COMISIONES = Val("TextComisiones")
    tabla!BONONOCTURNO = Val("TextBonoNocturno")
    tabla!DIASFERIADOS = Val("TextDiasFeriados")
    tabla!PRIMADERESPONSABILIDAD = Val("TextPrimaderesponsabilidad")
   tabla!PRIMAPROFESIONALIZACION = Val("TextPrimaProfesionlizacion")
    tabla!PRIMADETRANSPORTE = Val("textPRIMATRANSPORTE")
    tabla.Update
    tabla.Close




MsgBox "Asignaciones Registradas Exitosamente", vbInformation
    R = MsgBox("DESEA SEGUIR REGISTRANDO ASIGNACIONES?", vbInformation)
    If R = vbYes Then
   

    Else
        Unload Me
            End If
                End If

End Sub

Con esto he conseguido que guarde las asignaciones en la base de datos.

Todavía la parte de repetir el registro de asignaciones no está completada, pero con esto por lo menos he conseguido que me guarde en la tabla de "asignacionesdeempleados" y creo que tienes una buena orientación.


1676
Para poder operar con una base de datos lo primero es haber creado la base de datos y haber creado las tablas de que consta, y para cada tabla las columnas. Eso es lo que no sé si has hecho ya que no he visto un archivo de base de datos dentro de lo que has enviado.

Si accedes a wampserver escribiendo en el navegador: http://localhost/ , debe aparecerte un link a phpMyAdmin que es la herramienta para gestión de bases de datos.

Si pinchas en phpMyAdmin debe aparecerte a la izquierda una columna donde figuran las bases de datos existentes en el servidor. Como mínimo te aparecerán normalmente information_schema y mysql, que son bases de datos de operación del sistema. Pero además ahí tendrás (o si no la tienes necesitas tenerla) una base de datos donde está la información para que funcione la aplicación.

Si tienes la base de datos, para generar un archivo con la información de la misma puedes pulsar sobre su nombre y luego sobre el link "Exportar", ahí elige compresión con gzip y expórtala. Una vez la exportas, se guarda como archivo. Si haces esto, ponla como archivo adjunto en el foro para poder verla. Saludos.

1677
Ya lo he descargado (parece que no hace falta invitación), veo la base de datos en Access pero no veo el archivo de la base de datos MySql ¿lo has subido?

¿Cuál es el problema concreto que tienes?

1678
El antivirus me bloquea la descarga de ese fichero. Si lo que quieres es hacer un juego donde manteniendo apretado el botón espacio cada 10 segundos se produzca un disparo, un salto o similar, puedes hacerlo en java, pero hacer un juego es complejo y requiere bastantes conocimientos y tiempo.

1679
Sube el proyecto y la base de datos a dropbox ó a skydrive para poder verlo.

1680
No entiendo del todo que quieres hacer, si por ejemplo es que cada diez segundos se muestre un mensaje que diga "Está manteniendo pulsada la tecla de espacio" si quieres hacerlo dentro de un programa lo puedes hacer con diferentes lenguajes como Visual Basic, Java, etc.

Páginas: 1 ... 79 80 81 82 83 [84] 85 86 87 88 89 ... 93

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".