Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. International
  3. Spanish
  4. Crear menus en la barra de menus con QMenu
Forum Updated to NodeBB v4.3 + New Features

Crear menus en la barra de menus con QMenu

Scheduled Pinned Locked Moved Unsolved Spanish
2 Posts 2 Posters 1.1k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • X Offline
    X Offline
    Xedig
    wrote on last edited by
    #1

    Buenas amigos, una vez mas necesito un poco de ayuda, en concreto lo que quiero es crear nuevos menus desplegables con QMenu y que las nuevas opciones llamen a una funcion con unos parametros pero no consigo encontrar como debe de hacerse en concreto. Lo que estoy haciendo es:

    foreach(QString _menuNew, menusMotores)
        {
            QMenu *newMenu;
            QFile archivoCsv(_menuNew);
            newMenu = menuBar()->addMenu(_menuNew.remove(".csv"));
            archivoCsv.open(QIODevice::ReadOnly | QIODevice::Text);
            if(!archivoCsv.isOpen())
            {
                qDebug() << "El archivo no se ha abierto";
                return;
            }
            QTextStream datosArchivo(&archivoCsv);
            while (!datosArchivo.atEnd())
            {
                QStringList AccesoMotorPws;
                QString motorPws = datosArchivo.readLine();
                AccesoMotorPws = motorPws.split(';');
                qDebug() << "Nombre: " << AccesoMotorPws[0] << " ip: " << AccesoMotorPws[1] << " Puerto: " << AccesoMotorPws[2];
                newMenu->addAction(AccesoMotorPws[0], this, SLOT(setActions(&AccesoMotorPws[1], &AccesoMotorPws[2], &user, &pass, true))); //NO funciona
            }
    
        }
    

    Sospecho que el problema esta dentro del while que es donde se crean las acciones, ahi en la linea de newMenu->addAction(Acc .. no consigo que la funcion setActions con sus parametros se implemente en la opcion del menu, en aplication output me devuelve el mensaje de No such slot MainWindow::setActions(AccesoMotorPws[1], AccesoMotorPws[2], user, pass, true)

    ¿como puedo asignar a cada opcion del menu con un bucle una funcion con parametros distintos?
    Gracias de antemano

    1 Reply Last reply
    0
    • juankiJ Offline
      juankiJ Offline
      juanki
      Moderators
      wrote on last edited by
      #2

      Hola

      Yo creo que no estás llamando correctamente a addAction(). Repasa la documentación.

      No sé por que llamas a setActions dentro de SLOTS().

      Un saludo

      Intenta explicar el problema lo más claro y detallado posible. Adjunta los errores y el código que creas da el error.
      Procura escribir correctamente y sin faltas de ortografía.

      Si la duda se solucionó, por favor, marca el tema como 'solucionado'.

      1 Reply Last reply
      0

      • Login

      • Login or register to search.
      • First post
        Last post
      0
      • Categories
      • Recent
      • Tags
      • Popular
      • Users
      • Groups
      • Search
      • Get Qt Extensions
      • Unsolved