Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.*;
- import javax.swing.*;
- import java.awt.BorderLayout;
- import java.awt.Color;
- import java.awt.Dimension;
- import java.awt.EventQueue;
- import java.awt.GridBagConstraints;
- import java.awt.GridBagLayout;
- import java.awt.event.MouseAdapter;
- import java.awt.event.MouseEvent;
- import javax.swing.JFrame;
- import javax.swing.JPanel;
- import javax.swing.UIManager;
- import javax.swing.UnsupportedLookAndFeelException;
- import javax.swing.border.Border;
- import javax.swing.border.MatteBorder;
- import java.util.Random;
- public class sample{
- static JTextField availability=new JTextField();
- public void setTF(String[] args){
- availability.setText("available");
- }
- public static void main(String[] args){
- JFrame frame=new JFrame();
- //CellPane x=new CellPane();
- //frame.setSize(700,500);
- //frame.setLocation(100,500);
- frame.setBounds(10,10,1200,700);
- frame.setTitle("Taxi");
- Container c=frame.getContentPane();
- c.setBackground(Color.WHITE);
- //frame.setResizable(true);
- JLabel driver=new JLabel("Driver Name:");
- JLabel car=new JLabel("Car Number:");
- JLabel Mob=new JLabel("Call Driver :");
- JLabel avail=new JLabel("Available:");
- c.setLayout(null);
- driver.setBounds(900,50,100,30);
- car.setBounds(900,90,100,30);
- Mob.setBounds(900,130,100,30);
- avail.setBounds(900,170,100,30);
- c.add(driver);
- c.add(car);
- c.add(Mob);
- c.add(avail);
- JTextField driverName=new JTextField();
- JTextField carNumber=new JTextField();
- JTextField driverNumber=new JTextField();
- JTextField availability=new JTextField();
- driverName.setBounds(1000, 50, 150, 30);
- carNumber.setBounds(1000,90,150,30);
- driverNumber.setBounds(1000,130,150,30);
- availability.setBounds(1000,170,150,30);
- driverName.setBackground(Color.white);
- carNumber.setBackground(Color.white);
- driverNumber.setBackground(Color.white);
- availability.setBackground(Color.white);
- c.add(driverName);
- c.add(carNumber);
- c.add(driverNumber);
- c.add(availability);
- TestPane n=new TestPane();
- JPanel panel=new JPanel();
- panel.setBackground(Color.ORANGE);
- panel.setBounds(0, 0, 890, 700);
- c.add(panel);
- panel.setLayout(new BorderLayout());
- panel.add(n);
- frame.setVisible(true);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- }
- }
- class TestPane extends JPanel {
- int[] taxiRow=new int[10];
- int[] taxiCol=new int[10];
- int[] available=new int[10];
- int flag1=0;
- sample s=new sample();
- public TestPane() {
- makeArray();
- setLayout(new GridBagLayout());
- //System.out.printf("\n%d\n",taxiCol[9]);
- GridBagConstraints gbc = new GridBagConstraints();
- for (int row = 0; row < 50; row++) {
- for (int col = 0; col < 50; col++) {
- gbc.gridx = col;
- gbc.gridy = row;
- CellPane cellPane = new CellPane();
- cellPane.setArr(taxiRow, taxiCol,available);
- int val=cmp(row,col);
- if(val==1){
- cellPane.setBackground(Color.red);
- //continue;
- }
- else if(val==2){
- cellPane.setBackground(Color.BLUE);
- //continue;
- }
- Border border = null;
- if (row < 49) {
- if (col < 49) {
- border = new MatteBorder(1, 1, 0, 0, Color.GRAY);
- } else {
- border = new MatteBorder(1, 1, 0, 1, Color.GRAY);
- }
- } else {
- if (col < 49) {
- border = new MatteBorder(1, 1, 1, 0, Color.GRAY);
- } else {
- border = new MatteBorder(1, 1, 1, 1, Color.GRAY);
- }
- }
- cellPane.setBorder(border);
- //System.out.print("\n"+cellPane.flag);
- add(cellPane, gbc);
- }
- }
- }
- public void makeArray(){
- Random rand = new Random();
- int r,a;
- for(int i=0;i<10;++i){
- r = rand.nextInt(49) + 1;
- taxiRow[i]=r;
- r = rand.nextInt(49) + 1;
- taxiCol[i]=r;
- a=rand.nextInt(2)+1;
- available[i]=a;
- // System.out.print("\n"+a);
- }
- }
- public int cmp(int r,int c){
- int cmp=0;
- for(int i=0;i<10;++i)
- {
- if(r==taxiRow[i]&&c==taxiCol[i])
- return available[i];
- }
- return 0;
- }
- }
- class CellPane extends JPanel {
- int taxiRow[],taxiCol[],available[];
- private Color defaultBackground;
- int flag=0;
- public void setArr(int[] arr,int [] arr1,int arr2[]) {
- this.taxiRow = arr;
- taxiCol =arr1;
- available=arr2;
- }
- public CellPane() {
- addMouseListener(new MouseAdapter() {
- @Override
- public void mouseEntered(MouseEvent e) {
- defaultBackground = getBackground();
- //setBackground(Color.PINK);
- }
- @Override
- public void mouseExited(MouseEvent e) {
- setBackground(defaultBackground);
- flag=0;
- }
- @Override
- public void mouseClicked(MouseEvent e){
- if(Color.red.equals(defaultBackground)){
- flag=0;
- System.out.println("\navailability"+flag);
- }
- else if(Color.BLUE.equals(defaultBackground)){
- flag=1;
- System.out.println("\navailability"+flag);
- }
- else
- {
- for(int i=0;i<10;++i){
- if(available[i]==2){
- break;
- }
- System.out.println("YES");
- setBackground(Color.red);
- //System.out.println(""+taxiCol[i]);
- }
- }
- }
- });
- }
- @Override
- public Dimension getPreferredSize() {
- return new Dimension(10, 10);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement