В этой статье используется конкретный код для Java для реализации простого интерфейса входа в систему QQ для вашей ссылки. Конкретный контент заключается в следующем
Java не является сильной точкой в графическом интерфейсе, но это невозможно сделать. Его открытый исходный код очень хороший!
Код реализации выглядит следующим образом (если вы хотите реализовать идеальный интерфейс, вам может потребоваться дополнительная поддержка кодирования):
пакет com.ts.x.swing; импортировать java.awt.color; импортировать java.awt.container; импортировать java.awt.cursor; импортировать java.awt.font; импортировать java.awt.image; импортировать java.awt.event.actionevent; импортировать java.awt.event.actionlistener; Импорт javax.swing.imageicon; Импорт javax.swing.jbutton; импортировать javax.swing.jcheckbox; Импорт javax.swing.jcombobox; Импорт javax.swing.jcombobox; импортировать javax.swing.jframe; импортировать javax.swing.jlabel; импортировать javax.swing.joptionpane; импортировать javax.swing.jpasswordfield; импортировать javax.swing.jrootpane; импортировать javax.swing.jtextfield; открытый класс QQ Extends JFrame {Private Static Final Long SerialVersionUID = -6788045638380819221L; // Имя пользователя частное дж. // Пароль Private JPASSFORDEFIELD ULPASSWD; // небольшой контейнер частный jlabel J1; Частный Jlabel J2; Частный Jlabel J3; Частный Jlabel J4; // маленькая кнопка частного Jbutton B1; Частный Jbutton B2; Частный JButton B3; // флажок Private JCheckbox C1; Частный JCheckbox C2; // Список коробка Private jcombobox <string> cb1; /*** Инициализировать страницу входа в QQ**/public QQ () {// Установить заголовок окна входа в систему this.setTitle ("QQ Login"); // Удалить оконное украшение (граница) // this.setundecorated (true); // Использование указанного окна декоративного стиля this.getRootpane (). SetWindowDecorationStyle (jrootpane.none); // Инициализировать компонент формы init (); this.setDefaultCloseoPeration (jframe.exit_on_close); // Установить макет в абсолютном расположении this.setLayout (null); this.SetBounds (0, 0, 355, 265); // Установить изображение значка формы img0 = new imageicon ("d: /logo.png"). Getimage (); this.seticonimage (img0); // размер формы не может быть изменен. // Центр отображает это .setLocationRelativeTo (null); // Форма отображает это .setvisible (true); } /*** Инициализация компонента формы** /public void init () {// Создать контейнер, размер изображения и третий и четвертый параметры SetBounds, в основном, должны быть одинаковыми (вам необходимо вычислить и обрезать его сами) контейнер = this.getContentPane (); j1 = new jlabel (); // Установить изображение цвета фона img1 = new Imageicon ("d: /bgimg.png"). Getimage (); J1.seCeton (новый ImageICon (IMG1)); J1.SetBounds (0, 0, 355, 265); // QQ Avatar Установка j2 = new jlabel (); Image img2 = new imageicon ("d: /hdimg.png"). Getimage (); j2.seticon (новый Imageicon (IMG2)); J2.SetBounds (40, 95, 50, 53); // Имя пользователя BOX ULNAME = new JTextField (); Ulname.SetBounds (100, 100, 150, 20); // Регистрация учетная запись j3 = new jlabel ("Регистрационная учетная запись"); J3.SetBounds (260, 100, 70, 20); // BASSERON TONG BOX ULPASSWD = new JPasswordfield (); ulpasswd.setbounds (100, 130, 150, 20); // Получить пароль j4 = new jlabel ("получить пароль"); J4.SetBounds (260, 130, 70, 20); // запомнить пароль c1 = new jcheckbox ("помните пароль"); C1.SetBounds (105, 155, 80, 15); // Автоматический вход в систему c2 = new jCheckbox ("Автоматический логин"); C2.SetBounds (185, 155, 80, 15); // Выбор состояния пользователя CB1 = новый jcombobox <string> (); cb1.additem ("онлайн"); cb1.additem ("невидимый"); cb1.additem ("оставить"); CB1.SetBounds (40, 150, 55, 20); // кнопка входа в систему B1 = новый JButton ("Login"); // Установить шрифт и цвет и указатель руки B1.SetFont (новый шрифт ("宋体", font.plain, 12)); b1.setforeground (color.red); b1.setcursor (cursor.getpredefinedcursor (cursor.hand_cursor)); B1.SetBounds (280, 200, 65, 20); // Добавить b1.addactionListener (new ActionListener () {@Override public void actionPerformed (actionEvent e) {string cmd = e.getActionCommand (); if ("login" .equals (cmd)) {string onsame = ulname.getText (); String userPass = ulPasswd.getDegetText (); ifername. QueckelSkelse (") QuareSkalse () Queckalse () userpassword.equals ("123456")) {joptionpane.showconfirmdialog (null, "вход в систему успешно"); // множественная учетная запись b2 = new jbutton ("несколько учетных записей"); B2.SetBounds (5, 200, 75, 20); // setb3 = new jbutton ("set"); B3.SetBounds (100, 200, 65, 20); // все компоненты загружаются контейнером J1.Add (J2); J1.Add (J3); J1.add (J4); J1.Add (C1); J1.Add (C2); J1.Add (CB1); J1.Add (B1); J1.Add (B2); J1.Add (B3); intainer.add (J1); контейнер.адд (локтевые); контейнер.адд (ulpasswd); } public static void main (string [] args) {new qq (); }}Интерфейс результата работы:
Выше всего содержание этой статьи. Я надеюсь, что это будет полезно для каждого обучения, и я надеюсь, что все будут поддерживать Wulin.com больше.