📄 calenderpurdu.java
字号:
frame. setSize(800,500); frame.setVisible(true); } public void display(int year,int month) {//selectcombo(); setVisible(true); // date=date1; String fri1=new String(fri); String sat1=new String(sat); String sun1=new String(sun); String mon1=new String(mon); String tue1=new String(tue); String wed1=new String(wed); String thu1=new String(thu); int firstday=7,leap=0,diff,i,m,result=0,found=0; diff=year-2000; for(i=2000;i<year;i++) if(i%4==0) leap++; firstday+=diff; while(firstday>8) firstday-=7; firstday+=leap; while(firstday>7) firstday-=7; if(month>1) { if(year%4==0) { for(i=1;i<month;i++) result=result+leaplastday[i]; firstday+=result; } else { for(i=1;i<month;i++) result=result+lastday[i]; firstday+=result; } } while(firstday>7) firstday-=7; //return firstday; switch(firstday) { case 7: x=350; break; case 6: x=420; break; case 5: x=0; break; case 4: x=70; break; case 3: x=140; break; case 2: x=210; break; case 1: x=280; break; } if(year%4==0) last=leaplastday[month]; else last=lastday[month]; y=40; String[] days = {thu1,wed1,tue1,mon1,sun1,sat1,fri1}; int w,xx=0; for( w=0;w<7;w++) { // days[i] = new JLabel(Integer.toString(i+1)); week[w] = new JButton(days[w]); week[w].setBackground(new java.awt.Color (180,150, 200)); week[w].setForeground(new java.awt.Color (0,0, 50)); week[w].setFont(new java.awt.Font ("Urdu Naskh Unicode",1,12)); //da[i].setText("1"); week[w].setBounds(150+xx+xaxis,180+y+yy,70,30); //days[i].setAlignment(JLabel.CENTER); add(week[w]); xx+=70; } repaint(); } public void paintComponent(Graphics g) {display(year,month); super.paintComponent(g); Graphics2D g2 = (Graphics2D) g; String janw1=new String(janw); String feb1=new String(feb); String mar1=new String(mar); String apr1=new String(apr); String may1=new String(may); String jun1=new String(jun); String jul1=new String(jul); String aug1=new String(aug); String nov1=new String(nov); String sep1=new String(sep); String oct1=new String(oct); String dec1=new String(dec); //g.drawString("9", 95,250); // int a,b,c,d,e,maxx=400,f,x=0 g.setColor(new java.awt.Color (20,50,50)); g.fillRoundRect(130+xaxis,100+yy,540,390,15,15); g.setColor(new java.awt.Color (0,0,0)); g.fillRoundRect(140+xaxis,110+yy,520,370,15,15); g.setColor(new java.awt.Color (20,50,50));//line g.fillRoundRect(160+xaxis,155+yy,470,10,15,15); g.setColor(new java.awt.Color (20,50,50));//line g.fillRoundRect(160+xaxis,425+yy,470,10,15,15); g.setColor(new java.awt.Color (200,200,200)); g.fillRoundRect(150+xaxis,240+yy,490,170,15,15); g.setColor(new java.awt.Color (0,0,0)); g.fillRoundRect(25,170+yy,165,230,15,15); g.setColor(new java.awt.Color (180,180,150)); String[] mon = { janw1,feb1, mar1, apr1, may1,jun1, jul1, aug1, sep1, oct1, nov1, dec1}; String months=mon[month-1]; g.setFont(new java.awt.Font ("Urdu Naskh Unicode",1,37)); g.drawString(months,490+xaxis,160+y+yy); g.setFont(new java.awt.Font ("Arial Black",1,30)); g.drawString(String.valueOf(year),210+xaxis,160+y+yy); g.setColor(new java.awt.Color (0,0,240)); NumberFormat nf = NumberFormat.getInstance(); nf.setMinimumIntegerDigits(2); for( a=0;x>=maxx;a++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(a+1)),175+x+xaxis,240+y+yy); if(date==a+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-5+xaxis,240+y-15+yy,35,20); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(a+1)),175+x+xaxis,240+y+yy); g.setColor(new java.awt.Color (0,0,250)); } x-=70; } NumberFormat nf2 = NumberFormat.getInstance(); nf2.setMinimumIntegerDigits(2); x=420; for( b=a;x>=maxx;b++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf2.format(b+1)),175+x+xaxis,260+y+yy); if(date==b+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-3+xaxis,260+y-15+yy,30,22); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(b+1)),175+x+xaxis,260+y+yy); g.setColor(new java.awt.Color (0,0,250)); } x-=70; } x=420; for( c=b;x>=maxx;c++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(Integer.toString(c+1),175+x+xaxis,280+y+yy); if(date==c+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-3+xaxis,280+y-15+yy,30,22); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(c+1)),175+x+xaxis,280+y+yy); g.setColor(new java.awt.Color (0,0,250));} x-=70; } x=420; for( d=c;x>=maxx;d++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(Integer.toString(d+1),175+x+xaxis,300+y+yy); if(date==d+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-3+xaxis,300+y-15+yy,30,22); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(d+1)),175+x+xaxis,300+y+yy); g.setColor(new java.awt.Color (0,0,250)); } x-=70; } x=420; for( e=d;x>=maxx&e<last;e++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(Integer.toString(e+1),175+x+xaxis,320+y+yy); if(date==e+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-3+xaxis,320+y-15+yy,30,22); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(e+1)),175+x+xaxis,320+y+yy); g.setColor(new java.awt.Color (0,0,250)); } x-=70; } x=420; // int last; /*if(year%4==0) last=leaplastday[year]; else*/ for( f=e;x>=maxx&f<last;f++) { g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(Integer.toString(f+1),175+x+xaxis,350+y+yy); if(date==f+1) { g.setColor(new java.awt.Color (0,0,0)); g.fillOval(175+x-3+xaxis,350+y-15+yy,30,22); g.setColor(new java.awt.Color (250,250,250)); g.setFont(new java.awt.Font ("Arial Black",1,15)); g.drawString(String.valueOf(nf.format(e+1)),175+x+xaxis,350+y+yy); g.setColor(new java.awt.Color (0,0,250)); } x-=70; } x=420; } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -