Esconder conteúdo de uma caixa de texto Java Eclipse

Alguem sabe como meter **** no lugar do texto ?!
Capturar|453x53

Porque não usa o componente apropriado para isso. O Java disponibiliza o componente JPasswordField justamente para trocar os dados de uma senha por asterisco. Visite Oracle Docs - Java: JPasswordField para acessar a documentação do Java sobre esse componente e Java Tutorials - How to Use Password Fields para ter uma ideia de como utilizá-lo.

vou experimentar,obrigado!

Tem algum código de exemplo de como usar? É que nao percebi muito bem

Pôxa, o colega @Iohannes postou links com documentação e exemplos, você não conferiu?

Um JPasswordField é semelhante à um JTextField, única diferença é que, para obter o conteúdo dele você utiliza o método getPassword() ao invés do getText().

1 curtida

peço desculpa amigo, mas não compreendi muito bem

Você sabe utilizar um JTextField?
Posta um código onde você utiliza que fica fácil mostrar a diferença.

Estou a aprender ainda ,pois preciso desta linguagem para desenvolver um trabalho

Então sua dificuldade não está em usar um JPasswordField.
O que lhe falta é primeiro ter o embasamento de programação com Java para depois conseguir desenvolver telinhas.

1 curtida

ja desenvolvi muitas mas nunca tinha usado Jpasswordfield

Segue isso que dá bom:
https://www.javaprogressivo.net/2013/11/JTextField-JPassword-Caixas-de-texto-e-senha-em-GUI.html

Estou a usar este código e da erro será que alguém podia dar umas dicas:

package gui;

import java.io.IOException;
import java.util.function.Consumer;

import javax.swing.JOptionPane;
import javax.swing.JPasswordField;

import application.Main;
import gui.util.Alerts;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.Node;
import javafx.scene.Scene;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.control.Button;
import javafx.scene.control.TextField;
import javafx.scene.layout.AnchorPane;
import model.services.stockservice;

public class LoginController {

@FXML
private Button Login;
@FXML
private Button Anterior;
@FXML
private TextField txtemail;
@FXML
private JPasswordField txtpass;


public void onBtAnterior() {
	loadNovo("/gui/Form1.fxml", x -> {
	});
}


public void onBtLogin() {
	if (txtemail.getText().equals("xxxxxx") && txtpass.getPassword().equals("yyyyy")){
		JOptionPane.showMessageDialog(null, "Bem vindo xxxx!!");
		loadNovo("/gui/Stock.fxml", (StockController stController) -> {
			stController.setstocksservice(new stockservice());
			stController.updateTableView();
		});

	} else {
		JOptionPane.showMessageDialog(null, "Dados Inválidos!!");
		txtemail.clear();
		
		
	}
	if (txtemail.getText().length() < 0) {
		JOptionPane.showMessageDialog(null, "Tem de preencher o seu email!!");
	} else {
		if (txtpass.getPassword().length< 0) {
			JOptionPane.showMessageDialog(null, "Tem de inserir a sua password!!");
		}
	}
}

private synchronized <U> void loadNovo(String absolutename, Consumer<U> initializingAction) {
	try {
		FXMLLoader loader = new FXMLLoader(getClass().getResource(absolutename));
		AnchorPane newAnchor = loader.load();
		Scene mainScene = Main.getMainScene();
		AnchorPane formAnchor = ((AnchorPane) mainScene.getRoot());
		Node mainMenu = formAnchor.getChildren().get(0);
		formAnchor.getChildren().clear();
		formAnchor.getChildren().add(mainMenu);
		formAnchor.getChildren().addAll(newAnchor.getChildren());

		U stController = loader.getController();
		initializingAction.accept(stController);

	} catch (IOException e) {
		Alerts.showAlert("IO Exception", "Error loading View", e.getMessage(), AlertType.ERROR);
	}
}

}