Menú

Mostrar Mensajes

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

Mostrar Mensajes Menú

Mensajes - RyogiShiki

#781
Intenta desinstalando notification-daemon y cuando lo tengas desinstalado instala el paquete notify-osd que se debería encontrar en los repositorios.

Avisanos como te fue

Un Saludo!
#782
has intentado, envés de instalarlo desde los repositorios compilar el código de xulrunner o de kiwix?
#783
Hola. La verdad es que ninguno de esos programas tiene su recpectiva versión para Distros Linux, Así que tienes algunas alternativas:

1. Instalar Wine: Wine es una aplicación que te permite correr muchas aplicaciones de Windows sobre Linux, aunque es posible que con los programas de edición que manejas surjan algunos problemas de compatibilidad, para lidiar con esto busca en esta página tu programa para ver que tan compatible es con Wine:

http://appdb.winehq.org/

2. Instalar Un Virtualizador: un virtualizador es una aplicación que como su categoria lo dice sirven para virtualizar sistemas, así puedes instalar cualquier Distro y dentro de esta instalar por ejemplo VirtualBox, dentro de VB instalas Windows, y desde allí corres tus aplicaciones.

3. O por último no quitar windows y mejor particionar el dico para tener los dos sistemas en una misma máquina, y cada vez que necesites usar los programas entras a Windows.

Un saludo
#784
Software / Re: Dos Consultas una de VLC y otra de...
31 Diciembre 2010, 21:33 PM
Intenta instalar un pack de Codecs, los más recomendaos son K-Lite Codec Pack y CCC Instala alguno (SOLO UNO!)y nos cuentas

Saludos
#785
Al parecer este problema sucede cuando los Guest Adittion no son instalados en Safe Mode, intenta instalarlos en SafeMode y nos cuentas, también verifica que tu Sistemas Host (en onde tienes instalado VBox) esté a 32 bits en color

Espero Sirva

Saludos
#786
Hola, talvez deberías leer esta guia, posiblemente te sirva:

http://psp.scenebeta.com/node/9745

Un Saludo.
#787
Cita de: Littlehorse en 15 Diciembre 2010, 23:15 PM
system es estándar, lo que no es estándar son los comandos que puedas pasarle como parámetro, conio no es estándar. Por otro lado no hay alternativas estándar a conio, puesto que las tareas como limpiar la pantalla son inherentes y especificas de cada sistema, y se deben realizar con funciones especificas de el sistema en el que te encuentres u alguna librería multi plataforma que te ahorre realizar las distintas implementaciones.

En el buscador podrás encontrar muchos hilos con esta pregunta o similar.

Saludos!


Toda la razón, pero si quieres una libreria más "Amigable" y Open Source te recomiendo las ncurses originales de BSD y portadas a plataformas Winx como PDCurses, mira a continuación:
http://pdcurses.slashon.com/

Seguramente estos enlaces también te sean de utilidad:
http://es.tldp.org/Tutoriales/NCURSES/tutorial-ncurses.html
http://www.tldp.org/HOWTO/NCURSES-Programming-HOWTO/

Y está es una introducción muy simple y explicada como para niños XD
http://taringa.net/posts/linux/1587336/Programemos-Un-Poco-En-C_.html
http://taringa.net/posts/linux/1559988/Colores-En-C_-Sin-conio_h-y-Con-ncurses--Programador-Novato.html
Espero sea de utilidad!

Saludos
#788
Bueno gracias a todos por su ayuda, al final lo he resuelto, los errores estaban en los tipos de las variables declaradas y como las mostraba por el printf, así que si a alguien le interesa implementar una barra de progreso en una TUI a continuación dejo el código resultante, ya saben, las criticas y objeciones son bienvenidas.

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <cmath>
#include <curses.h>

#ifdef _WIN32
   #include <windows.h>
   #define Sleep Sleep
   //#define clear system("cls")
#else
   #include <unistd.h>
   #define Sleep sleep
   //#define clear system("clear")
#endif

float PorcentProgress(float Temp, float Total);
/*Función para definir color de fondo del interprete*/
void SetBackground(char FirstColor, char SecondColor){
   assume_default_colors(FirstColor, SecondColor);
   for(int i=0;i<2000;i++) {
       printw("\n\r");
       refresh();
   }
}

void ReDraw(){
   border(ACS_VLINE,ACS_VLINE,ACS_HLINE,ACS_HLINE,ACS_ULCORNER,ACS_URCORNER,ACS_LLCORNER,ACS_LRCORNER);
}

int main(int argc, char *argv[]){
   initscr();

   FILE * File;
   int CordX = 8;
   float Res, Porcent, Comp = 0;
   char Word [30] = {""};

   if(has_colors()){
           start_color();
   }else{
       printw("Su interprete o sistema no soporta colores, el programa tendra errores de visualización");
   }
   SetBackground(COLOR_WHITE, COLOR_BLUE);
   ReDraw();
   mvprintw(2,15,"Ejemplo Progress Bar");
   while(Comp < 50000){
       mvprintw(5,8,"Cuantas palabras desea ingresar en el archivo (mas de 50.000): ");
       scanw("%f", &Comp);
       ReDraw();
       refresh();
   }
   while(strlen(Word) == 0){
       mvprintw(7,8,"Que palabra desea ingresar: ");
       scanw("%s", Word);
       ReDraw();
       refresh();
   }
   mvprintw(10,8,"[                                                ]");
   File = fopen("File.prb", "w");
   for(float Cont = 0;Cont <= Comp;++Cont){
       fprintf(File,"%s",Word);
       Porcent = PorcentProgress(Cont,Comp);
       mvprintw(11,8,"Palabras Escritas: %d de %d",(int)Cont,(int)Comp);
       mvprintw(10,61,"%f",Porcent);
       mvprintw(13,8,"%f %f ",Porcent,fmodf(Porcent, 2));
       if(fmodf(Porcent, 2) == 0){
           CordX += 1;
           mvprintw(10,CordX,"|");
       }
       refresh();

   }
   fclose(File);
   refresh();
   getch();
   endwin();
   return 0;
}

float PorcentProgress(float Temp, float Total){
   {
       float Porcent;
       Porcent = (Temp/Total);
       Porcent = Porcent*100;
       return Porcent;
   }
}



Gracias a todos! ;)
#789
Bien, Gracias a todos por sus ayudas y aportes, sigo teniendo algunos problemas, primero estos son los avances:

#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <curses.h>

#ifdef _WIN32
   #include <windows.h>
   #define Sleep Sleep
   //#define clear system("cls")
#else
   #include <unistd.h>
   #define Sleep sleep
   //#define clear system("clear")
#endif

int PorcentProgress(int Temp, int Total);
/*Función para definir color de fondo del interprete*/
void SetBackground(char FirstColor, char SecondColor){
   assume_default_colors(FirstColor, SecondColor);
   for(int i=0;i<2000;i++) {
       printw("\n\r");
       refresh();
   }
}

int main(int argc, char *argv[]){
   initscr();

   FILE * File;
   int Comp = 0, CordX = 7, Res, Porcent;
   char Word [30] = {""};

   if(has_colors()){
           start_color();
   }else{
       printw("Su interprete o sistema no soporta colores, el programa tendra errores de visualización");
   }
   SetBackground(COLOR_WHITE, COLOR_BLUE);
   border(ACS_VLINE,ACS_VLINE,ACS_HLINE,ACS_HLINE,ACS_ULCORNER,ACS_URCORNER,ACS_LLCORNER,ACS_LRCORNER);
   mvprintw(2,15,"Ejemplo Progress Bar");
   while(Comp < 50000){
       refresh();
       mvprintw(5,8,"Cuantas palabras desea ingresar en el archivo (mas de 50.000): ");
       scanw("%d", &Comp);
   }
   while(strlen(Word) == 0){
       refresh();
       mvprintw(7,8,"Que palabra desea ingresar: ");
       scanw("%s", Word);
   }
   mvprintw(10,8,"[                                                  ]");
   File = fopen("File.prb", "w");
   for(int Cont = 0;Cont <= Comp;++Cont){
       fprintf(File,"%s",Word);
       Porcent = PorcentProgress(Cont,Comp);
       mvprintw(11,8,"Palabras Escritas: %d de %d",Cont,Comp);
       mvprintw(10,61,"%d",Porcent);
       Res = Porcent;
       if(/*Condición para actualizar la barra*/){
           CordX += 2;
           mvprintw(10,CordX,"||");
       }
       refresh();

   }
   fclose(File);
   refresh();
   getch();
   endwin();
   return 0;
}

int PorcentProgress(int Temp, int Total){
   {
       int Porcent;
       Temp = (Temp/Total);
       Temp *= 100;
       return Temp;
   }
}


Bueno, todo ha ido bien en la inserción de datos, y el calcuo del porcentaje debe ser correcto. Pero tengo algunos problemas: En primer lugar el numero que muestra el porcentaje de la barra no se actualiza como lo hacen los datos escritos, sino que permanece en 0 todo el proceso hasta que finaliza y cambia a 100, ahora gracias a todas sus ideas y el analisis de unaventana de descargas de firefox (XD) la idea era tener 50 espacios disponibles para caracteres a la hora de llenar la barra, así cada que pasara un 2% de la operación se incertaria 1 caracter en la barra, para cuando llegará a 100% se habrían insertado 50 caracteres y la barra estaría completa, el problema es que al realizar el calculo de los porcentajes el valor devuelto es un entero es por eso que mientras pasa de 2.1% a 2.9% siempre devuelve un entero 2 lo que hace que la barra de actualice innecesariamente, he probado cambiando a un tipo float, pero entonces la operación de residuo para saber si el numoro es par no está permitida (%) y si convierto a entero pasará lo que ya había explicado y la barra se actualizará innecesariamente, en el código pueden ver expuestas la versión que solo usa enteros para el proceso.

Con lo anterior, me gustaría escuchar las sus sugerencias. Que opinan, las criticas y objeciones también son bienvenidas. Gracias por los aportes de antes, y de antemano gracias por los aportes que lleguen a hacer.

PD: El código está escrito con la libreria curses, si están en Win y no saben como ejecutarlo o quieren saber de curses visiten http://pdcurses.slashon.com/
PD: Aunque ya lo deben saber para compilar desde *nix con gcc simplemente en una terminal insertan: gcc bpr.cpp bpr -o -lncurses

;)
#790
Hola!.

Buenas a todos. A continuación mi duda:

Bueno, siempre he tenido una duda sobre barras de progreso. el caso es que programar el funcionamiento de la barra es bastante fácil, lo que me tiene confundido es la forma de implementarlo a alguna operación que esté realizando el programa en ese momento. Por ejemplo si estoy creando un archivo en el que estoy insertando una cantidad grande de datos, como haria para que la barra de progreso funcione mientras la inserción de datos se hace y termine cuando la inserción de datos lo haga. Claro, como dice el título esto sobre una interfaz de texto.

Les agradecería mucho la aclaración de esto ;)

Saludos!