📄 frmmain.java
字号:
.addComponent(jLabel5)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(txtMessage, javax.swing.GroupLayout.PREFERRED_SIZE, 481, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(btnSendMessage, javax.swing.GroupLayout.DEFAULT_SIZE, 171, Short.MAX_VALUE)))
.addContainerGap())
);
jPanel5Layout.setVerticalGroup(
jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel5Layout.createSequentialGroup()
.addComponent(jScrollPane4, javax.swing.GroupLayout.PREFERRED_SIZE, 371, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSeparator5, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel5Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel5)
.addComponent(txtMessage, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(btnSendMessage))
.addContainerGap(58, Short.MAX_VALUE))
);
jTabbedPane1.addTab("Chat", new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/24x24/MessengerIcon.png")), jPanel5, "Peers Messenger");
jPanel6.setBorder(javax.swing.BorderFactory.createTitledBorder("Listing Peers In Current Group"));
ListOfPeers.setBorder(javax.swing.BorderFactory.createTitledBorder("Peers Name:"));
ListOfPeers.setToolTipText("Peers in SaEeD Group");
jScrollPane5.setViewportView(ListOfPeers);
jSeparator6.setOrientation(javax.swing.SwingConstants.VERTICAL);
btnFindPeers.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/24x24/searchIcon2.png")));
btnFindPeers.setText("Find Peers");
btnFindPeers.setToolTipText("Start Searching for Peers in SaEeD Group");
btnFindPeers.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnFindPeersActionPerformed(evt);
}
});
btnStopPeerSearch.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/24x24/cancelIcon.png")));
btnStopPeerSearch.setText("Stop");
btnStopPeerSearch.setToolTipText("Stop Searching for Peers");
btnStopPeerSearch.setEnabled(false);
btnStopPeerSearch.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btnStopPeerSearchActionPerformed(evt);
}
});
jLabel6.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jLabel6.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/24x24/progress_bar.gif")));
javax.swing.GroupLayout jPanel6Layout = new javax.swing.GroupLayout(jPanel6);
jPanel6.setLayout(jPanel6Layout);
jPanel6Layout.setHorizontalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addContainerGap()
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLabel6, javax.swing.GroupLayout.DEFAULT_SIZE, 748, Short.MAX_VALUE)
.addGroup(jPanel6Layout.createSequentialGroup()
.addComponent(jScrollPane5, javax.swing.GroupLayout.PREFERRED_SIZE, 245, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jSeparator6, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(btnStopPeerSearch, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(btnFindPeers, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))))
.addContainerGap())
);
jPanel6Layout.setVerticalGroup(
jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel6Layout.createSequentialGroup()
.addGroup(jPanel6Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jSeparator6, javax.swing.GroupLayout.DEFAULT_SIZE, 422, Short.MAX_VALUE)
.addComponent(jScrollPane5, javax.swing.GroupLayout.DEFAULT_SIZE, 422, Short.MAX_VALUE)
.addGroup(jPanel6Layout.createSequentialGroup()
.addComponent(btnFindPeers)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 356, Short.MAX_VALUE)
.addComponent(btnStopPeerSearch)))
.addGap(26, 26, 26)
.addComponent(jLabel6)
.addContainerGap())
);
jTabbedPane1.addTab("List Of Peers", new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/24x24/sysinfoIcon.png")), jPanel6, "Listing Peers in Group");
jMenu1.setMnemonic('F');
jMenu1.setText("File");
MenuItemConnect.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/16x16/connectIcon.png")));
MenuItemConnect.setMnemonic('C');
MenuItemConnect.setText("Connect");
MenuItemConnect.setEnabled(false);
MenuItemConnect.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MenuItemConnectActionPerformed(evt);
}
});
jMenu1.add(MenuItemConnect);
MenuItemDisconnect.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/16x16/disconnectIcon.png")));
MenuItemDisconnect.setText("Disconnect");
MenuItemDisconnect.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MenuItemDisconnectActionPerformed(evt);
}
});
jMenu1.add(MenuItemDisconnect);
jMenu1.add(jSeparator1);
MenuItemExit.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/16x16/exitIcon.png")));
MenuItemExit.setMnemonic('X');
MenuItemExit.setText("Exit");
MenuItemExit.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
MenuItemExitActionPerformed(evt);
}
});
jMenu1.add(MenuItemExit);
jMenuBar1.add(jMenu1);
jMenu2.setMnemonic('V');
jMenu2.setText("View");
jMenu4.setText("Window Style");
ItemWindowStyle.setText("Windows Look");
ItemWindowStyle.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ItemWindowStyleActionPerformed(evt);
}
});
jMenu4.add(ItemWindowStyle);
ItemSwingStyle.setText("Swing Look");
ItemSwingStyle.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ItemSwingStyleActionPerformed(evt);
}
});
jMenu4.add(ItemSwingStyle);
ItemOthersStyle.setText("Others Look");
ItemOthersStyle.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ItemOthersStyleActionPerformed(evt);
}
});
jMenu4.add(ItemOthersStyle);
jMenu2.add(jMenu4);
jMenuBar1.add(jMenu2);
jMenu3.setMnemonic('H');
jMenu3.setText("Help");
ItemAboutMe.setIcon(new javax.swing.ImageIcon(getClass().getResource("/myPackage/myIcons/16x16/helpIcon.png")));
ItemAboutMe.setMnemonic('A');
ItemAboutMe.setText("About Me");
ItemAboutMe.setToolTipText("About Me!");
ItemAboutMe.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
ItemAboutMeActionPerformed(evt);
}
});
jMenu3.add(ItemAboutMe);
jMenuBar1.add(jMenu3);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 785, Short.MAX_VALUE)
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jTabbedPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 545, Short.MAX_VALUE)
.addContainerGap())
);
pack();
}// </editor-fold>//GEN-END:initComponents
private void MenuItemConnectActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemConnectActionPerformed
// initializing all needed obejcts and reconnect to JXTA network
MenuItemConnect.setEnabled(false);
//Starting Chat Services, which includes chat input and Output using the same pipe.
chatIn = new ChatInput(connection.getSaEeDGroup(), this.txtLog, this.txtChatArea);
chatIn.startListening();
chatOut = new ChatOutput(connection.getSaEeDGroup(), this.txtLog, this.txtChatArea);
chatOut.start();
//initializing the PeersListing class to be able to find peers in SaEeDGroup
peersList = new PeersListing(connection.getSaEeDGroup(), this.txtLog, this.ListOfPeers);
//Start Sharing Services
File myPath = new File(Path);
launchSharing = new SaEeDSharing(connection.getSaEeDGroup(), this.txtLog, myPath);
//Starting the Sharing Thread
launchSharing.start();
}//GEN-LAST:event_MenuItemConnectActionPerformed
private void MenuItemDisconnectActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_MenuItemDisconnectActionPerformed
// finalizing all Objects
MenuItemConnect.setEnabled(true);
launchSharing.stopCMS();
launchSharing = null;
chatIn.stopListening();
chatIn = null;
chatOut = null;
peersList = null;
}//GEN-LAST:event_MenuItemDisconnectActionPerformed
private void btnReloadActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnReloadActionPerformed
//Listing the Files in Shared Directory
File dir = new File(Path);
File [] listOfFiles = dir.listFiles();
String [] titles = {"Type" , "File Name" , "Size Bytes", "Check Sum (CRC-32)"};
int NumOfFiles =0;
for(int i=0;i < listOfFiles.length;i++){
if(listOfFiles[i].isFile()){
NumOfFiles++;
}
}
DefaultTableModel TableModel1 = new DefaultTableModel(titles,NumOfFiles){
public boolean isCellEditable(int rowIndex, int mColIndex) {
return false;
}
};
mySharedTable.setModel(TableModel1);
//This table render is used to show file type icons in Table
TableCellRenderer iconHeaderRenderer = new DefaultTableCellRenderer() {
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
// Inherit the colors and font from the header component
if (table != null) {
JTableHeader header = table.getTableHeader();
if (header != null) {
setForeground(header.getForeground());
setBackground(header.getBackground());
setFont(header.getFont());
}
}
if (value !=null) {
setIcon((ImageIcon)value);
} else {
setText((value == null) ? "" : value.toString());
setIcon(null);
}
setBorder(UIManager.getBorder("TableHeader.cellBorder"));
setHorizontalAlignment(JLabel.CENTER);
return this;
}
};
//Setting new Table render to our table
mySharedTable.getColumnModel().getColumn(0).setCellRenderer(iconHeaderRenderer);
int j=0;
for(int i=0; i< listOfFiles.length;i++){ //Showing different icons for different file type
if(listOfFiles[i].isFile())
{
if(listOfFiles[i].getName().endsWith(".mp3") || listOfFiles[i].getName().endsWith(".MP3"))
{
mySharedTable.setValueAt(mp3Icon,j,0);
}else if(listOfFiles[i].getName().endsWith(".avi") || listOfFiles[i].getName().endsWith(".mpg") ||
listOfFiles[i].getName().endsWith(".mpeg") || listOfFiles[i].getName().endsWith(".wmv"))
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -