Método next() de la interfaz iterator en una lista de pares en Java

estoy implementando el método next() en una lista de pares, Pair Un ejemplo sería [Pair(“hola”,1),Pair(1,9)] Tengo el siguiente constructor:

public ConjuntoIterator(PositionList<Pair<E,Integer>> lista) {      if (lista == null) {             throw new IllegalArgumentException ();          }     this.lista=lista;     this.cursor=list.first();     this.prevCursor=list.prev(cursor);     avanzaCursor(); } 

El método avanzaCursor()

private void avanzaCursor() {       while(cursor != null && (cursor.element().getLeft() == null || cursor.element().getRight()<= 0)) {           cursor = list.next(cursor);           }       } 

Y aquí tengo el método next()

public E next() throws NoSuchElementException {       if (cursor == null) {             throw new NoSuchElementException();          }       E elem = cursor.element().getLeft();       cursor = list.next(cursor);       avanzaCursor();       return elem;    } 

Y mi cuestión es que no consigo resolver que el next me de la parte Integer, pues solo me da la parte de E, ¿Cómo podría hacerlo,gracias?

Necesito modificar la interfaz de este Cubo Rubick o Crear uno muy parecido desde 0

http://github.com/davidwhogg/MagicCube

Ese es el cubo en cuestión que necesito modificar solo la interfaz, no el funcionamiento, quiero quitar los botones de abajo y mover los botones de resolver cubo y volver a vista inicial hacia la parte superior, lo que es el cubo en sí dejarlo como esta😌, alguien me puede ayudar con eso?

Se puede reiniciar la interfaz grafica en Java?

Mi problema es el siguiente, tengo un JTextArea que debe mostrar el resultado de unos comandos ejecutados en Linux, estos comandos se reciben por un socket, el caso es que cuando ejecuto el comando, logro recibir los datos de el comando, pero la Interfaz grafica se queda sin responder, ~

            if(!entrada.getText().equals("")){                  enviar(entrada.getText());                 salida = leer();                 while(salida!=null){                     System.out.println(salida);                     salida = leer();                     System.out.println(salida);                     }                                                   }else{                 JOptionPane.showMessageDialog(null, "Ingrese un comando");                                 }                

Este es el metodo que se ejecuta cuando presiono ejecutar, y estos son los metodos leer y enviar: ~

     public String leer(){         String Msg ="";         try{             InputStream fAuxEntrada = Cliente.skCliente.getInputStream();             DataInputStream fEntrada = new DataInputStream(fAuxEntrada);             Msg = fEntrada.readUTF();             if(Msg==null){                 fEntrada.close();             }          }catch(Exception e){          }         return Msg;     }      public void enviar(String h){         String Msg = h;         try{              OutputStream fAuxSalida = Cliente.skCliente.getOutputStream();             DataOutputStream fSalida  = new DataOutputStream(fAuxSalida);             fSalida.writeUTF(Msg);             if(h==null){                 fSalida.close();             }                         }catch(Exception e){          }     } 

Interfaz de Usuario se queda congelada en While y label no actualiza (PyQt5)

Antes que nada quiero dejar claro que soy muy muy nuevo en Python y Qt.

Estoy creando una interfaz gráfica mediante PyQt5 en Python 3 para un programa que toma los valores de un sonómetro y los guarda en un Excel. Mi problema viene porque quiero mostrar algunos valores en los labels de forma constante, es decir, que se actualicen cada segundo al ritmo que el sonómetro toma los valores, pero al entrar en el bucle While True el cual lee constantemente los valores del aparato, la interfaz se queda congelada, de modo que no llega a salir nada por los labels.

Necesito ayuda, llevo días dándole vueltas y he intentado hacerlo de mil maneras diferentes pero no avanzo nada. Sé que la solución seguramente se encuentra en el uso de Threads pero no consigo entender su funcionamiento al 100% y no sé cómo implementarlo en mi código. Mi propósito es que el proceso de leer datos se ejecute al darle a un botón pero que puedas pararlo dándole a otro. Adjunto el código en cuestión.

while True:                y = time.strftime("%X")        d = datetime.now()      "{:%Y-%m-%d %H:%M:%S}".format(d)       linea = str(sc101.readline()) #Lee linea a linea los datos recibidos del sonòmetre y los guarda en la variable  linea         LC1=linea[14:17]+'.'+linea[17]      # introduce el valor LC1      LA1=linea[19:22]+'.'+linea[22]      # introduce el valor LA1      LCt=linea[24:27]+'.'+linea[27]      # introduce el valor LCt      LAt=linea[29:32]+'.'+linea[32]      # introduce el valor LAt      LAF=linea[34:37]+'.'+linea[37]      # introduce el valor LAF      LAFmin=linea[39:42]+'.'+linea[42]   # introduce el valor LAFmin      LAFmax=linea[44:47]+'.'+linea[47]   # introduce el valor LAFmax      LAS=linea[49:52]+'.'+linea[52]      # introduce el valor LAS      LASmin=linea[54:57]+'.'+linea[57]   # introduce el valor LSmin      LASmax=linea[59:62]+'.'+linea[62]   # introduce el valor LSmax      LCpeak=linea[64:67]+'.'+linea[67]   # introduce el valor LCpeak      LCF=linea[69:72]+'.'+linea[72]      # introduce el valor LCF      LCFmin=linea[74:77]+'.'+linea[77]   # introduce el valor LCFmin      LCFmax=linea[79:82]+'.'+linea[82]   # introduce el valor LCFmax          self.LAm_7.setText("="+LC1)       #AQUÍ IMPRIMIRÍA EL VALOR EN EL LABEL 

Si queréis ver más parte del código voy subiendo más, ya que me he dejado la gran mayoría.

¡¡MUCHAS GRACIAS!!

No se actualizan mis registros en Sqlite desde mi interfaz en Python

Buen dia amigos!!!! Nuevamente recurro a ustedes, en esta ocasión en la interfaz que sigo haciendo tengo este problema, resulta que de mi base de datos en la tabala price_list estan contenidos estudios clinicos con su precio y el costo de la maquila, (las columnas se llaman: estudios_clinicos, precio y maquila) entonces, hice un boton para eliminar el cual se hace bien la funcion y actualiza la tabla donde ya no se ve el estudio eliminado, pero en esta ocasion le agregue otro boton para editar el estudio para cuando exista la necesidad de actualizar los precios de los estudios o por completo el nombre del estudio, entonces cuando lo quiero actualizar “segun” me indica el programa que se actualizó mi registro porque le puse un cuadro de dialogo emergente indicando eso, pero no se actualiza ya que lo corroboro en el DBrowser y no pasa nada, quise ver los valores que se teclean en la pantalla de la terminal pero no se observan salen en blanco que estoy haciendo mal???

      def run_query_1(self, query, parameters = ()): #Consulta en la tabla de lista de precios          with sqlite3.connect(self.db_lab) as conn:               cursor = conn.cursor()               result = cursor.execute(query, parameters)               conn.commit()          return result          # Consulta de datos          query = 'SELECT * FROM price_list ORDER BY id_folio DESC'          db_rows = self.run_query_1(query)        def get_estudios(self): #Obtencion de la lista de precios y desplegada en una tabla            # Limpiando la tabla           records = self.tree.get_children()           for element in records:           self.tree.delete(element)           # getting data           query = 'SELECT * FROM price_list ORDER BY id_folio DESC'           db_rows = self.run_query_1(query).fetchall()           # filling data           for row in db_rows:               self.tree.insert('', 0, text = row[1], values = (row[1], row[2], row[3]))         def delete_estudios(self):                try:               self.tree.item(self.tree.selection())['text'][0]           except IndexError as e:           messagebox.showinfo('Borrado de estudios', 'Por favor elija un estudio')           return            estudios_clinicos = self.tree.item(self.tree.selection())['text']           query = 'DELETE FROM price_list WHERE estudios_clinicos = ?'           self.run_query_1(query, parameters=(estudios_clinicos,))           messagebox.showinfo('Borrado de estudios', 'Registro Borrado')           self.get_estudios()      def edit_estudio(self):          try:           self.tree.item(self.tree.selection())['values'][0]         except IndexError as e:           messagebox.showinfo('Editar estudio', 'Por favor elija un estudio')         return           estudios_clinicos= self.tree.item(self.tree.selection())['text']           precio = self.tree.item(self.tree.selection())['values'][1]           maquila = self.tree.item(self.tree.selection())['values'][2]            #Ventana alterna           self.edit_wind = Toplevel()           self.edit_wind.title = 'Editar estudio'            # Estudio anterior           Label(self.edit_wind, text = 'Estudio anterior:').grid(row = 0, column = 1)           Entry(self.edit_wind, textvariable = StringVar(self.edit_wind, value = estudios_clinicos), state = 'readonly').grid(row = 0, column = 2)            # Nuevo Estudio           Label(self.edit_wind, text = 'Nuevo estudio:').grid(row = 1, column = 1)           self.new_name = Entry(self.edit_wind)           self.new_name.focus()           self.new_name.grid(row = 1, column = 2)            # Precio anterior           Label(self.edit_wind, text = 'Precio anterior:').grid(row = 2, column = 1)           Entry(self.edit_wind, textvariable = StringVar(self.edit_wind, value = precio), state = 'readonly').grid(row = 2, column = 2)           # Nuevo precio           Label(self.edit_wind, text = 'Nuevo precio:').grid(row = 3, column = 1)           self.new_price= Entry(self.edit_wind)           self.new_price.grid(row = 3, column = 2)             # Precio de maquila anterior           Label(self.edit_wind, text = 'Precio maquila anterior:').grid(row = 4, column = 1)           Entry(self.edit_wind, textvariable = StringVar(self.edit_wind, value = maquila), state = 'readonly').grid(row = 4, column = 2)           # Nuevo precio de maquila           Label(self.edit_wind, text = 'Nuevo precio maquila:').grid(row = 5, column = 1)           self.new_price_maq= Entry(self.edit_wind)           self.new_price_maq.grid(row = 5, column = 2)             Button(self.edit_wind, text = 'Actualizar', command = lambda: self.edit_records(self.new_name.get(), estudios_clinicos, self.new_price.get(), precio, self.new_price_maq.get(), maquila)).grid(row = 7, column = 2, sticky = W)           print(self.new_name.get()) # en esta parte no se ven los datos tecleados por el usuario solo se ve en blanco           print(self.new_price.get()) # aqui igual           print(self.new_price_maq.get()) #tambien aqui           print(estudios_clinicos) #estos si se visualizan           print(precio)           print(maquila)                   self.edit_wind.mainloop()       def edit_records(self, new_name, estudios_clinicos, new_price, precio, new_price_maq, maquila):          query = 'UPDATE price_list SET estudios_clinicos = ?, precio = ?, maquila = ? WHERE estudios_clinicos = ? AND precio = ? AND maquila = ?'          parameters = (new_name, estudios_clinicos, new_price, precio, new_price_maq, maquila)          self.run_query_1(query, parameters)          self.edit_wind.destroy()          messagebox.showinfo('Actualizar estudio', 'El estudio ha quedado actualizado') #aqui es donde me indica que se editó correctamente            self.get_estudios() 

Espero puedan ayudarme a encontrar el problema!!! gracias Saludos!

Cómo programar interfaz gráfica siendo ciego

Hola amigos que tengan un lindo día. Mi nombre es Rodrigo condori flores y soy nuevo por aquí. Bueno les cuento que estoy estudiando la carrera de ingeniería de sistemas en la universidad y voy en el primer semestre. Bueno tengo una duda soy Ciego de nacimiento y me gustaría saber cómo puedo programar interfaz gráfica en cualquier lenguaje de programación. Yaqui buscando tutoriales encontré varios que por ejemplo para programar en Android Studio para agregar un botón lo arrastras hacia el lugar donde quieres que esté tu botón y ya automáticamente se te agrega. En mi caso al no ver esto es imposible Ya que mi lector de pantalla no está capacitado para hacer ese tipo de trabajos. Entonces mi pregunta es cómo podría hacer yo para programar interfaces gráficas sin ver gracias

¿Como puedo mejorar el diseño de mi Interfaz Gráfica de Usuario en Python?

Hola soy nuevo en esto y tal vez mi pregunta suene tonta pero no he encontrado una respuesta o una solución a mi duda

Veo programas como Word y me pregunto como puedo lograr una estética de ese nivel o si es posible con algún módulo o ¿cual es la forma en que podría hacerlo ya que mi proyecto ya lo tengo avanzado en Python