GUI BankSystem
parent
3ef3b1618a
commit
93f837d241
|
@ -0,0 +1,63 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
public class Controller {
|
||||||
|
|
||||||
|
private Modell user1;
|
||||||
|
private View view;
|
||||||
|
private View_Hauptfenster h1 = new View_Hauptfenster();
|
||||||
|
private String name;
|
||||||
|
private String password;
|
||||||
|
|
||||||
|
Controller(Modell user, View view){
|
||||||
|
this.user1 = user;
|
||||||
|
this.view = view;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean logIn() {
|
||||||
|
view.getLogIn().addActionListener(new ActionListener(){
|
||||||
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
name = view.getNameEingabe();
|
||||||
|
password = view.getPasswordEingabe();
|
||||||
|
user1 = new Modell(name,password);
|
||||||
|
view.zeigeUserInfos();
|
||||||
|
view.schließeLoginFenster();
|
||||||
|
zeigeHauptfenster();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public void zeigeHauptfenster() {
|
||||||
|
h1.zeigeBegrüße(user1.getName());
|
||||||
|
|
||||||
|
h1.setVisible(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Modell getUser1() {
|
||||||
|
return user1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,54 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
public class Modell {
|
||||||
|
|
||||||
|
private String name;
|
||||||
|
private int kontostand;
|
||||||
|
private int id;
|
||||||
|
private String password;
|
||||||
|
private static int ID = 100;
|
||||||
|
|
||||||
|
public Modell() {}
|
||||||
|
public Modell(String name, String password) {
|
||||||
|
this.name = name;
|
||||||
|
this.kontostand = 0;
|
||||||
|
this.password = password;
|
||||||
|
this.id = ++ID;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getName() {
|
||||||
|
return name;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setName(String name) {
|
||||||
|
this.name = name;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public int getKontostand() {
|
||||||
|
return kontostand;
|
||||||
|
}
|
||||||
|
public void setKontostand(int kontostand) {
|
||||||
|
this.kontostand = kontostand;
|
||||||
|
}
|
||||||
|
//set ID ist nicht erlaubt
|
||||||
|
public int getId() {
|
||||||
|
return id;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getPassword() {
|
||||||
|
return password;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setPassword(String password) {
|
||||||
|
this.password = password;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String toString() {
|
||||||
|
return "[name=" + name + ", Kontostand=" + kontostand + ", id=" + id + ", password=" + password + "]";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,13 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
public class Test {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
View user1View = new View();
|
||||||
|
Modell user1 = new Modell();
|
||||||
|
|
||||||
|
Controller controller = new Controller(user1,user1View);
|
||||||
|
controller.logIn();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,70 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.awt.event.ActionEvent;
|
||||||
|
import java.awt.event.ActionListener;
|
||||||
|
|
||||||
|
import javax.swing.JButton;
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JOptionPane;
|
||||||
|
import javax.swing.JPasswordField;
|
||||||
|
import javax.swing.JTextField;
|
||||||
|
|
||||||
|
public class View extends JFrame {
|
||||||
|
|
||||||
|
private JLabel title = new JLabel("Log in: ");
|
||||||
|
|
||||||
|
private JLabel userName = new JLabel("Name: ");
|
||||||
|
private JTextField nameEingabe = new JTextField();
|
||||||
|
private JLabel password = new JLabel("Password: ");
|
||||||
|
private JPasswordField passwordEingabe = new JPasswordField();
|
||||||
|
private JButton logIn = new JButton("Log in");
|
||||||
|
//(int x, int y, int width, int height)
|
||||||
|
|
||||||
|
public View() {
|
||||||
|
this.setTitle("Log in");
|
||||||
|
this.setVisible(true);
|
||||||
|
this.setSize(900, 650);
|
||||||
|
this.setLayout(null);
|
||||||
|
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
|
|
||||||
|
title.setBounds(10,20,120,20);
|
||||||
|
userName.setBounds(10,50,100,20);
|
||||||
|
nameEingabe.setBounds(140,50,140,20);
|
||||||
|
|
||||||
|
password.setBounds(10,80,100,20);
|
||||||
|
passwordEingabe.setBounds(140,80,140,20);
|
||||||
|
logIn.setBounds(10,110,100,20);
|
||||||
|
|
||||||
|
|
||||||
|
this.add(title);
|
||||||
|
this.add(userName);
|
||||||
|
this.add(nameEingabe);
|
||||||
|
this.add(password);
|
||||||
|
this.add(passwordEingabe);
|
||||||
|
this.add(logIn);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void zeigeUserInfos() {
|
||||||
|
JOptionPane.showMessageDialog(null, "Deine Log in war erfolgreich", "Log in Erfolgreich", JOptionPane.INFORMATION_MESSAGE);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getNameEingabe() {
|
||||||
|
return nameEingabe.getText();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public String getPasswordEingabe() {
|
||||||
|
return new String(passwordEingabe.getPassword());
|
||||||
|
}
|
||||||
|
|
||||||
|
public JButton getLogIn() {
|
||||||
|
return logIn;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void schließeLoginFenster() {
|
||||||
|
this.dispose(); // Schließt das aktuelle Fenster
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
package GUIAnwendungen.Meine_GUI_Chat;
|
||||||
|
|
||||||
|
import java.awt.Color;
|
||||||
|
|
||||||
|
import javax.swing.JFrame;
|
||||||
|
import javax.swing.JLabel;
|
||||||
|
import javax.swing.JPanel;
|
||||||
|
|
||||||
|
public class View_Hauptfenster extends JFrame{
|
||||||
|
private JPanel panel = new JPanel();
|
||||||
|
private JLabel begrüsse = new JLabel();
|
||||||
|
|
||||||
|
public View_Hauptfenster() {
|
||||||
|
panel.setBackground(Color.gray);
|
||||||
|
panel.setBounds(10, 10, 300, 300);
|
||||||
|
begrüsse.setBounds(10,10,100,30);
|
||||||
|
panel.add(begrüsse);
|
||||||
|
|
||||||
|
this.setTitle("Das Hauptfenster");
|
||||||
|
this.setVisible(false);
|
||||||
|
this.setLayout(null);
|
||||||
|
this.setSize(700, 700);
|
||||||
|
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
this.add(panel);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void zeigeBegrüße(String name) {
|
||||||
|
begrüsse.setText("Willkommen " + name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void main(String[]args) {
|
||||||
|
View_Hauptfenster test = new View_Hauptfenster();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
package Thread;
|
||||||
|
|
||||||
|
import java.util.Scanner; // Scanner هنا قمنا باستدعاء الكلاس
|
||||||
|
|
||||||
|
public class Main {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
// و الذي سنستخدمه لإدخال بيانات من المستخدم input إسمه Scanner هنا قمنا بإنشاء كائن من الكلاس
|
||||||
|
Scanner input = new Scanner(System.in);
|
||||||
|
|
||||||
|
// et إسمه ExamTimer هنا قمنا بإنشاء كائن من الكلاس
|
||||||
|
ExamTimer et = new ExamTimer();
|
||||||
|
|
||||||
|
int num1; // سنستخدم هذا المتغير لتخزين أول رقم عشوائي يظهر في عملية الجمع
|
||||||
|
int num2; // سنستخدم هذا المتغير لتخزين ثاني رقم عشوائي يظهر في عملية الجمع
|
||||||
|
int userAnswer; // سنستخدم هذا المتغير لتخزين العدد الذي سيدخله المستخدم للإجابة على عمليأت الجمع
|
||||||
|
int operationsCounter = 0; // سنخزن عدد العمليات الحسابية التي ستظهر عند تشغيل البرنامج فيه
|
||||||
|
int correctAnswersCounter = 0; // سنخزن عدد الإجابات الصحيحة في هذا المتغير
|
||||||
|
int wrongAnswersCounter = 0; // سنخزن عدد الإجابات الخطئ من ي هذا المتغير
|
||||||
|
|
||||||
|
// الأمر الذي سيجعله في حالة إنتظار مدة 20 ثانية فقط و بعدها سيتوقف كلياً et هنا قمنا بتشغيل الكائن
|
||||||
|
et.start();
|
||||||
|
|
||||||
|
System.out.println("---------- Quiz ---------");
|
||||||
|
|
||||||
|
// طالما أن مدة العشرين ثانية لم تنقضي بعد سيستمر في تنفيذ الأوامر الموجودة في هذه الحلقة
|
||||||
|
while(et.isAlive())
|
||||||
|
{
|
||||||
|
num1 = (int)(Math.random()*10); // num1 سيتم تخزين رقم عشوائي بين 1 و 9 في المتغير
|
||||||
|
num2 = (int)(Math.random()*10); // num2 سيتم تخزين رقم عشوائي بين 1 و 9 في المتغير
|
||||||
|
|
||||||
|
System.out.print(num1+" + "+num2+" = "); // num2 و num1 هنا سيطلب من المستخدم معرفة ناتج جمع العددين
|
||||||
|
userAnswer = input.nextInt(); // هنا سيتم إنتظار المستخدم لإدخال الجواب
|
||||||
|
|
||||||
|
if(userAnswer == num1+num2) // إذا كانت إجابته صحيحة, سيتم إضافة عدد الإجابات الصحيحة واحداً
|
||||||
|
correctAnswersCounter++;
|
||||||
|
|
||||||
|
else // إذا كانت إجابته خاطئة, سيتم إضافة عدد الإجابات الخطأ واحداً
|
||||||
|
wrongAnswersCounter++;
|
||||||
|
|
||||||
|
operationsCounter++; // في الأخير سيتم إضافة عدد عمليات الجمع واحداً
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println("Time end..\n");
|
||||||
|
|
||||||
|
// بعد إنتهاء مدة العشرين ثانية سيتم طباعة عدد عمليات الجمع, عدد الأجوبة الصحيحة و عدد الأجوبة الخاطئة
|
||||||
|
System.out.println("--------- Result --------");
|
||||||
|
System.out.println("Number of operations: " +operationsCounter);
|
||||||
|
System.out.println("Number of correct answers: " +correctAnswersCounter);
|
||||||
|
System.out.println("Number of wrong answers: " +wrongAnswersCounter);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
class ExamTimer extends Thread {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
// لثانية واحدة Thread بعدها سيتم إيقاف كائن الـ
|
||||||
|
try {
|
||||||
|
Thread.sleep(1000);
|
||||||
|
}
|
||||||
|
catch(Exception e) {
|
||||||
|
System.out.println(e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
|
@ -7,6 +7,17 @@ package Thread;
|
||||||
* Ändere die Priority nur, wenn ein Thread wichtiger ist.
|
* Ändere die Priority nur, wenn ein Thread wichtiger ist.
|
||||||
* - Standardmäßig hat jeder neu erstellte Thread eine Priority von 5,
|
* - Standardmäßig hat jeder neu erstellte Thread eine Priority von 5,
|
||||||
* um eine faire parallele Ausführung zu gewährleisten.
|
* um eine faire parallele Ausführung zu gewährleisten.
|
||||||
|
*
|
||||||
|
* - Unterschied zwischen den Methoden run() und start():
|
||||||
|
* . run(): Direkter Aufruf also Das bedeutet, dass kein neuer Thread gestartet wird.
|
||||||
|
* Kein Multithreading: Da kein neuer Thread gestartet wird, findet keine parallele Ausführung statt.
|
||||||
|
*
|
||||||
|
* .start(): Neuen Thread starten: Der Aufruf der start()-Methode bewirkt, dass ein neuer Thread erzeugt wird,
|
||||||
|
* und der Code innerhalb der run()-Methode wird in diesem neuen Thread ausgeführt
|
||||||
|
* .Multithreading: Die start()-Methode führt tatsächlich zu Multithreading,
|
||||||
|
* weil sie den neuen Thread in den "Runnable" Zustand versetzt und schließlich die run()-Methode in diesem separaten Thread ausgeführt wird.
|
||||||
|
*
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
public class ThreadBeispiel {
|
public class ThreadBeispiel {
|
||||||
|
|
||||||
|
@ -18,6 +29,7 @@ public class ThreadBeispiel {
|
||||||
}, "MeinThread");
|
}, "MeinThread");
|
||||||
|
|
||||||
// Starten des Threads
|
// Starten des Threads
|
||||||
|
myThread.run();
|
||||||
myThread.start();
|
myThread.start();
|
||||||
|
|
||||||
// Abrufen der eindeutigen Thread-ID und des Thread-Namens
|
// Abrufen der eindeutigen Thread-ID und des Thread-Namens
|
||||||
|
|
|
@ -5,6 +5,8 @@ public class Whatsapp {
|
||||||
private String name;
|
private String name;
|
||||||
private String teleN;
|
private String teleN;
|
||||||
private String nachricht;
|
private String nachricht;
|
||||||
|
private static int ID = 100;
|
||||||
|
private int id;
|
||||||
private ArrayList <String> speicherContact;
|
private ArrayList <String> speicherContact;
|
||||||
private ArrayList <String> speicherNummern;
|
private ArrayList <String> speicherNummern;
|
||||||
private ArrayList <String> blockContact;
|
private ArrayList <String> blockContact;
|
||||||
|
@ -18,6 +20,7 @@ public class Whatsapp {
|
||||||
speicherContact.add(this.name);
|
speicherContact.add(this.name);
|
||||||
this.speicherNummern = new ArrayList<>();
|
this.speicherNummern = new ArrayList<>();
|
||||||
speicherNummern.add(teleN);
|
speicherNummern.add(teleN);
|
||||||
|
this.id = ++ID;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -5,37 +5,7 @@ public class WhatsappTest {
|
||||||
|
|
||||||
public static void main(String[] args) {
|
public static void main(String[] args) {
|
||||||
Whatsapp obai = new Whatsapp("obai", "049321384324");
|
Whatsapp obai = new Whatsapp("obai", "049321384324");
|
||||||
Whatsapp omar = new Whatsapp("omar", "049321384324");
|
System.out.println(obai.toString());
|
||||||
Whatsapp abd = new Whatsapp("abd", "049321321");
|
|
||||||
Whatsapp oula = new Whatsapp("oula", "049321321");
|
|
||||||
|
|
||||||
|
|
||||||
Nachrichten messages = new Nachrichten(obai,omar);
|
|
||||||
messages.sendMessage(obai, omar, "Hallo omar");
|
|
||||||
messages.sendMessage(omar, obai, "Hallo obai");
|
|
||||||
messages.sendMessage(omar, obai, "was machst du?");
|
|
||||||
messages.printsaveMessages();
|
|
||||||
omar.blocKontakt(obai);
|
|
||||||
messages.sendMessage(omar, obai, "was machst du?");
|
|
||||||
messages.printsaveMessages();
|
|
||||||
|
|
||||||
// Groups gr1 = new Groups(obai,"Almidani");
|
|
||||||
// gr1.addMembers(omar);
|
|
||||||
// gr1.addMembers(abd);
|
|
||||||
//
|
|
||||||
// obai.addContact("abd","004848214");
|
|
||||||
// obai.addContact("omar","004848214");
|
|
||||||
// gr1.addAdmin(obai, omar);
|
|
||||||
// gr1.printaddmembers(obai);
|
|
||||||
// System.out.println();
|
|
||||||
// System.out.println();
|
|
||||||
// System.out.println();
|
|
||||||
// gr1.printaddmembers(omar);
|
|
||||||
// gr1.sendeMessages(abd, "Hallo Omar");
|
|
||||||
// gr1.sendeMessages(omar, "Hallo Abd");
|
|
||||||
//
|
|
||||||
//
|
|
||||||
// gr1.printallMessages();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue