Estoy construyendo una interfaz gráfica de usuario para la dirección IP y la calculadora de direcciones de transmisión. Y tengo 3 objetos en mi mainwindow.ui: textEdit (escribe su dirección IP en él), textEdit_2 (escribe la dirección de su máscara de subred), plainTextEdit (solo un cuadro de bienvenida). Este es mi mainwindow.cpp.

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QDebug>

QString users_mask;
QString users_ip;

MainWindow::MainWindow(QWidget *parent)
    : QMainWindow(parent)
    , ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    this->setStyleSheet("background-color: #484848;");
    ui->textEdit->setStyleSheet("border: 1px solid white; color: gray;");
    ui->textEdit->setPlainText("Enter ip address");
    ui->textEdit_2->setPlainText("Enter mask address here");
    ui->textEdit_2->setStyleSheet("border: 1px solid white; color: gray;");
    ui->plainTextEdit->setPlainText("Welcome to the ip address calculator!");
    ui->plainTextEdit->setStyleSheet("border: 1px #484848; color: #FFFFFF;");
    ui->plainTextEdit->setEnabled(false);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::get(){

    users_ip = ui->textEdit->toPlainText();
    users_mask = ui->textEdit_2->toPlainText();
}

void MainWindow::on_calculate_clicked()
{
    get();
    qDebug()<<users_ip<<" -- "<<users_mask;
}

Ahora quiero que textEdit y textEdit_2 se borren cada vez que un usuario escribe algo. y ¿hay alguna función o algo que permita hacer eso?

0
zjawa 21 ene. 2021 a las 18:31

1 respuesta

La mejor respuesta

Está buscando la propiedad placeholderText, pero está usando el widget incorrecto :) Use QLineEdit en su lugar para esas entradas de dirección. placeholderText es la pista que desea que se muestre antes de que el usuario comience a ingresar.

QTextEdit es un widget diseñado para la edición general de texto de varias líneas, y lo que está intentando hacer es una entrada de una sola línea.

También debe dar a los widgets nombres autodescriptivos. En lugar de tener que escribir textEdit (escribe tu dirección IP en él) , puedes simplemente nombrar ese widget ipAddress y no necesitarías explicar nada a nadie (mucho menos a ti mismo en un un par de meses sin mirar el código).

1
Kuba hasn't forgotten Monica 21 ene. 2021 a las 15:41