Java Commander -
hebrencs -
Sun Aug 08 17:42:00 CEST 2010
Sziasztok! Ujra a segítségetekre szorulnék egy kis feladat kezelővel bajlodom olyan total commanderes lenne.A gépen levő meghajtok kilistázása megoldva de tovább nem boldogulnék a győkér könyvtárakat ki tudom nyitogatni de a vissza lépések/csukogatás/ nem megy/nem értem és nem találok rá utalást sem a neten/. az uj könyvtár létrehozás és a másolás gombok eseménykezelése sem megy.
package project1;
import java.awt.*;
import javax.swing.*;
import javax.swing.JFrame;
public class indit {
public indit() {
super();
}
public static void main(String[] args) {
Frame1 f = new Frame1();
f.setTitle("Java Commnader");
f.setVisible(true);
}
}
----------------------------------------------------------------------------------------------------------------
package project1;
import java.io.File;
import java.*;
import java.lang.*;
import java.util.Date;
import java.io.File;
public class fkezeles {
String _drive;
String _directory;
File f;
File selectedFile;
String _path;
Object get;
public fkezeles(String mdrive, String mdirectory) {
_drive = mdrive;
_directory = mdirectory;
_path = this._drive+this._directory;
f = new File(_drive+_directory);
}
public long get_free_space(){
return f.getFreeSpace();
}
public long get_total_space(){
return f.getTotalSpace();
}
public long get_usable_space(){
return f.getUsableSpace();
}
public String[] drive_list(){
File[] dl= File.listRoots();
String[] t = new String[dl.length];
for(int i=0; i<dl.length; i++){
t[i]=dl[i].toString();
}
return t;
}
public String[] file_list(){
return f.list();
}
public void set_drive(String mdrive){
_drive=mdrive;
f = new File(this._drive);
}
public void set_directory(String mdirectory){
if(this._directory.length()==0){
_directory = mdirectory;
_path=_drive+_directory+"\\";
}else{
_directory = mdirectory;
_path = _path+_directory+"\\";
}
f = new File(_path);
}
public void setselectedFile(String filename){
selectedFile = new File(this._drive+this._directory+filename);
}
public long getsFilelength(){
return selectedFile.length();
}
public Date getsFilelast_modified(){
return new Date(selectedFile.lastModified());
}
}
------------------------------------------------------------------------------------------------------------------------------
public class Frame1 extends Frame {
private MenuBar menuBar1 = new MenuBar();
private Menu menu1 = new Menu();
private Menu menu2 = new Menu();
private MenuItem menuItem1 = new MenuItem();
private MenuItem menuItem2 = new MenuItem();
private Button button1 = new Button();
private Button button2 = new Button();
private List list1 = new List();
private List list2 = new List();
private Choice choice1 = new Choice();
private Choice choice2 = new Choice();
private TextField textField1 = new TextField();
private TextField textField2 = new TextField();
private TextField textField3 = new TextField();
private Label label1 = new Label();
private Label label2 = new Label();
private Label label3 = new Label();
private fkezeles fk;
private TextField textField4 = new TextField();
private Label label4 = new Label();
private Label label6 = new Label();
private TextField textField5 = new TextField();
private TextField textField6 = new TextField();
private Label label7 = new Label();
private Label label8 = new Label();
private Object event;
private JButton Kilép = new JButton();
public Frame1() {
try {
jbInit();
} catch (Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
this.setLayout( null );
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setSize(new Dimension(800, 453));
this.setBackground( SystemColor.control );
setVisible(true);
menu1.setLabel("File");
menu2.setLabel("Edit");
menuItem1.setLabel("New");
menuItem1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
menuItem1_actionPerformed(e);
}
});
menuItem2.setLabel("Close");
button1.setLabel("Megnyitás");
button1.setBounds(new Rectangle(10, 385, 90, 30));
button1.setActionCommand("Megnyitás");
button1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
button1_actionPerformed(e);
}
});
button2.setLabel("Új könyvtár");
button2.setBounds(new Rectangle(115, 385, 100, 30));
button2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
button2_actionPerformed(e);
}
});
list1.setBounds(new Rectangle(10, 115, 190, 245));
list1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
list1_actionPerformed(e);
}
});
list1.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
list1_itemStateChanged(e);
}
});
list2.setBounds(new Rectangle(205, 115, 200, 245));
list2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
list2_actionPerformed(e);
}
});
choice1.setBounds(new Rectangle(10, 80, 190, 30));
choice1.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
choice1_itemStateChanged(e);
}
});
choice2.setBounds(new Rectangle(205, 80, 200, 30));
choice2.addItemListener(new ItemListener() {
public void itemStateChanged(ItemEvent e) {
choice2_itemStateChanged(e);
}
});
textField1.setBounds(new Rectangle(490, 130, 100, 25));
textField2.setBounds(new Rectangle(490, 165, 100, 25));
textField3.setBounds(new Rectangle(490, 200, 100, 25));
label1.setText("MM");
label1.setBounds(new Rectangle(450, 130, 20, 25));
label2.setText("SZH");
label2.setBounds(new Rectangle(450, 165, 20, 25));
label3.setText("FH");
label3.setBounds(new Rectangle(450, 200, 20, 25));
textField4.setBounds(new Rectangle(450, 280, 270, 25));
textField4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField4_actionPerformed(e);
}
});
label4.setText("Kiválasztott meghajtó");
label4.setBounds(new Rectangle(445, 80, 110, 20));
label6.setText("Kiválasztott File");
label6.setBounds(new Rectangle(460, 240, 110, 20));
textField5.setBounds(new Rectangle(500, 320, 220, 30));
textField5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField5_actionPerformed(e);
}
});
textField6.setBounds(new Rectangle(515, 365, 205, 30));
textField6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField6_actionPerformed(e);
}
});
label7.setText("Mérete:");
label7.setBounds(new Rectangle(450, 320, 40, 25));
label8.setText("utolsó módosítás");
label8.setBounds(new Rectangle(425, 370, 85, 20));
Kilép.setText("Másolás");
Kilép.setBounds(new Rectangle(225, 385, 105, 30));
Kilép.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Kilép_actionPerformed(e);
}
});
menu1.add(menuItem1);
menu1.add(menuItem2);
menuBar1.add(menu1);
menuBar1.add(menu2);
this.add(Kilép, null);
this.add(label8, null);
this.add(label7, null);
this.add(textField6, null);
this.add(textField5, null);
this.add(label6, null);
this.add(label4, null);
this.add(textField4, null);
this.add(label3, null);
this.add(label2, null);
this.add(label1, null);
this.add(textField3, null);
this.add(textField2, null);
this.add(textField1, null);
this.add(choice2, null);
this.add(choice1, null);
// sajat kod
this.add(list2, null);
this.add(list1, null);
this.add(button2, null);
this.add(button1, null);
this.add(Kilép, null);
fk = new fkezeles("","");
// drive ok listaja
String[] drlist = fk.drive_list();
for(int i=0;i<drlist.length; i++){
this.choice1.add(drlist[i]);
this.choice2.add(drlist[i]);
}
if(this.choice1.getItemCount()!=0){
this.setlist1(this.choice1.getItem(0),"");
}
if(this.choice2.getItemCount()!=0){
this.setlist2(this.choice1.getItem(0),"");
}
// drive ok listaja vege
// info sav
this.textField1.setText(Long.toString(fk.get_total_space()));
textField1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField1_actionPerformed(e);
}
});
this.textField2.setText(Long.toString(fk.get_free_space()));
textField2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField2_actionPerformed(e);
}
});
this.textField3.setText(Long.toString(fk.get_usable_space()));
textField3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
textField3_actionPerformed(e);
}
});
}
private void setlist1(String mdrive, String mdirectory){
fk.set_drive(mdrive);
fk.set_directory(mdirectory);
String[] flist = fk.file_list();
this.list1.removeAll();
for(int i=0;i<flist.length; i++){
this.list1.add(flist[i]);
}
}
private void setlist2(String mdrive, String mdirectory){
fk.set_drive(mdrive);
fk.set_directory(mdirectory);
String[] flist = fk.file_list();
this.list2.removeAll();
for(int i=0;i<flist.length; i++){
this.list2.add(flist[i]);
}
}
private void menuItem1_actionPerformed(ActionEvent e) {
}
private void choice1_itemStateChanged(ItemEvent e) {
this.setlist1(this.choice1.getSelectedItem(),"");
// info sav
this.textField1.setText(Long.toString(fk.get_total_space()));
this.textField2.setText(Long.toString(fk.get_free_space()));
this.textField3.setText(Long.toString(fk.get_usable_space()));
// info sav vege
}
private void list1_actionPerformed(ActionEvent e) {
this.setlist1(this.choice1.getSelectedItem(),this.list1.getSelectedItem());
}
private void list1_itemStateChanged(ItemEvent e) {
fk.setselectedFile(this.list1.getSelectedItem());
this.textField4.setText(this.list1.getSelectedItem());
this.textField5.setText(Long.toString(fk.getsFilelength()));
this.textField6.setText(fk.getsFilelast_modified().toString());
}
private void button1_actionPerformed(ActionEvent e) {
FileDialog p = new FileDialog(this, "Mit kő mőgnyitni, barom ??", FileDialog.LOAD);
p.setDirectory("C:\\");
p.setVisible(true);
String fn = p.getFile();
String fd = p.getDirectory();
File sajatfile = new File(fd+fn);
if(fn!=null){
if(sajatfile.exists()){
}
}
}
private void button2_actionPerformed(ActionEvent e) {
}
private void setDefaultCloseOperation(int i) {
// System.exit(0);
}
private void choice2_itemStateChanged(ItemEvent e) {
this.setlist2(this.choice2.getSelectedItem(),"");
// info sav
this.textField1.setText(Long.toString(fk.get_total_space()));
this.textField2.setText(Long.toString(fk.get_free_space()));
this.textField3.setText(Long.toString(fk.get_usable_space()));
}
private void list2_actionPerformed(ActionEvent e) {
this.setlist2(this.choice2.getSelectedItem(),this.list2.getSelectedItem());
}
private void list2_itemStateChanged(ItemEvent e) {
fk.setselectedFile(this.list2.getSelectedItem());
this.textField4.setText(this.list2.getSelectedItem());
this.textField5.setText(Long.toString(fk.getsFilelength()));
this.textField6.setText(fk.getsFilelast_modified().toString());
}
}
}
egy kicsit hosszura sikerál,a Frame olsztály importjait nem másoltam be ide.A másolás és a új könyvtár gombok esemény kezelését a List1 és a List 2_itemStateChanged utasitás blokkjaiban kell lekezelni ??
Köszönöm előreis mindenféle segítséget.
Switch , ciklus ismétlődése -
Tomsawier -
Thu Jul 29 22:58:34 CEST 2010
Sziasztok!
Írtam egy egyszerű programot, amit szeretnék továbbfejleszteni időről időre, ahogy jobban megimserem a Java nyelv rejtelmeit. Olvastam egy könyvben, hogy nics goto parancs Javaban mint Dosban, ahol egy egyszerű (... :a ... goto a)-val el lehet érni az örkös s ismétlődést. Javaban ez hogyan oldható meg, ha azt szeretném elérni, hogy összeadást válaszva minden számolás után újra összeadás következzen a program egyszeri elindításával? (Pl.: Matematika házi, képletek alkalmazása, stb...) Így belegondolva ha sikerűl elég jól megimsernem -e programozási nyelvet, és el is sajátítom rengeteg hasznos segítségre teszek szert. A programom részletes forráskódja:
import java.util.Scanner;
class Java{
public static void main(String args[]){
System.out.println("0 = About");
System.out.println("1(+) = Összeadás");
System.out.println("2(-) = Kivonás");
System.out.println("3(*) = Szorzás");
System.out.println("4(/) = Osztás");
Scanner bevitel = new Scanner (System.in);
int valtozo1;
valtozo1 = bevitel.nextInt();
switch(valtozo1){
case 0: System.out.println("Készítette: Horváth Tamás || E-mail: eurostar@vipmail.hu || Verziószám: V.1.0");
break;
case 1:
//-> Ide szeretném a ":a"-t
double num1, num2, eredmeny;
System.out.print("Első szám: ");
num1 = bevitel.nextDouble();
System.out.print("Második szám: ");
num2 = bevitel.nextDouble();
eredmeny = num1 + num2;
System.out.print("Az összeadás eredménye: " + eredmeny);
// Ill. ide a goto a-t
break;
Köszönöm.