ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>黄色视屏网站在线免费观看,欧美xo影院,一级理论片在线观看http://www.aygfsteel.com/Hexise/业精于勤è’于å¬?行æˆäºŽæ€æ¯äºŽéšzh-cnFri, 06 Jun 2025 04:06:07 GMTFri, 06 Jun 2025 04:06:07 GMT60Sametime Server安装é…ç½®éšç¬”http://www.aygfsteel.com/Hexise/archive/2007/09/04/142692.htmlHexiseHexiseTue, 04 Sep 2007 09:23:00 GMThttp://www.aygfsteel.com/Hexise/archive/2007/09/04/142692.htmlhttp://www.aygfsteel.com/Hexise/comments/142692.htmlhttp://www.aygfsteel.com/Hexise/archive/2007/09/04/142692.html#Feedback0http://www.aygfsteel.com/Hexise/comments/commentRss/142692.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/142692.html        IBM Lotus Domino Server 7.0.2 åQ?br />        IBM Lotus Notes Designer and Admin Client 7.0.2 åQ?br />        IBM Lotus Sametime Server 7.5.1 åQ?br />        IBM Lotus Sametime Connect 7.5.1 åQ?br />
二ã€å®‰è£…顺åºï¼š
        Domino Server->Sametime Server->Notes Admin Client->Sametime Client

三ã€Domino Server安装åQ?br />         1.按照æç¤ºå®‰è£…Domino ServeråQŒé€‰æ‹©Domino Enterprise Server
        2.˜q行Server Setup Program
        3.选择Set up the first server or a new Domino domain.
        4.填写Server nameå’ŒServer titleåQŒOrganization Nameå’ŒOrganization Certifier password
        5.填写½Ž¡ç†å‘˜çš„å称和密ç ï¼Œä¸€å®šè¦è®°å½•该用户å和密ç ?br />         6.选中Domino Serveræä¾›çš„Http Services
        7.ä¸å¿…选中LDAP Service

å››ã€Sametime Server安装åQ?br />         1.按照æç¤ºå®‰è£…Sametime ServeråQŒå¦‚æžœéœ€è¦æ¿€‹z?0端å£åQŒé€‰ä¸­Enable HTTP tunnelingã€?br />         2.å¯åЍSametime‹Æ¢è¿Žç•Œé¢åQ?a href="http://domain/stcenter.nsf">http://domain/stcenter.nsfåQŒç™»å½•至½Ž¡ç†™åµé¢åQŒå¦‚果无法登录,å¯èƒ½æ˜¯åŸŸåè§£æžé—®é¢˜ï¼Œž®†åŸŸå与ip的对应关¾pÀL·»åŠ åˆ°windows/system32/drivers/etc/hostæ–‡äšgä¸?br />         3.如果‹Æ¢è¿Žç•Œé¢æ²¡æœ‰ç”¨æˆ·æ³¨å†Œé€‰é¡¹åQŒéœ€½Ž¡ç†å‘˜å¼€å¯è¯¥åŠŸèƒ½ã€?br />         
        åœ¨ç®¡ç†é¡µé¢ä¸­é€‰æ‹©Domino目录->DominoåQŒå‹¾é€?label for="1">å…许用户注册åˆ?Domino 目录一™å¹ï¼Œè¯¥é¡¹éœ€é‡å¯æœåŠ¡å™¨ï¼Œòq¶åœ¨åŽé¢æ“作中给予æƒé™æ”¯æŒã€?br />         

五ã€Notes Admin Client安装
        1.按照æç¤ºå®‰è£…Notes Admin ClientåQŒå®‰è£…完毕åŽå¯åЍåQŒæ‰“开文äšgTab™åµï¼Œåœ¨Domino Directory上点å‡Õd³é”?>å­˜å–æŽ§åˆ¶->½Ž¡ç†åQŒæ‰“å¼€ACL(å­˜å–æŽ§åˆ¶åˆ—è¡¨)å¯¹è¯æ¡?br />         2.æ·ÕdŠ ç”¨æˆ·Sametime Development/Lotus Notes Companion ProductsåQŒåƈ¾l™äºˆä½œè€…æƒé™ï¼Œä½¿å…¶æ‹¥æœ‰åˆ›å¾æ–‡æ¡£½{‰æƒé™ï¼Œç„¶åŽèµ‹äºˆå…¶UserCreator角色åQŒè¯¥æ­¥æ“作用以æä¾›ç”¨æˆäh³¨å†Œæ‰€éœ€çš„æƒé™ã€?br />         

å…­ã€Sametime Client安装
        1.按照æç¤ºå®‰è£…Sametime Client
        2.˜q›å…¥http://domain/stcenter.nsf注册用户
        3.使用该用户和domain地å€ç™Õd½•至sametime

Hexise 2007-09-04 17:23 å‘表评论
]]>
JFace å¯ç¼–辑的TreeViewerå’ŒTableViewerhttp://www.aygfsteel.com/Hexise/archive/2007/01/04/91764.htmlHexiseHexiseThu, 04 Jan 2007 07:29:00 GMThttp://www.aygfsteel.com/Hexise/archive/2007/01/04/91764.htmlhttp://www.aygfsteel.com/Hexise/comments/91764.htmlhttp://www.aygfsteel.com/Hexise/archive/2007/01/04/91764.html#Feedback4http://www.aygfsteel.com/Hexise/comments/commentRss/91764.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/91764.htmlå‘已有的TreeViewerå’ŒTableViewer上添加编辑功能,å¯ä»¥ä½¿ç”¨CellEditorå’ŒCellModifierã€?/p>

CellEditor定义了æŸä¸ªåˆ—被编辑时昄¡¤ºçš„外观,它å¯ä»¥æ˜¯æ–‡æœ¬æ¡†ã€ä¸‹æ‹‰åˆ—表框或å•选框åQŒä¹Ÿå¯ä»¥è‡ªå·±å®šä¹‰ã€?/p>

通常使用的CellEditor的孾cÕd°±æ˜¯ï¼šCheckboxCellEditorã€ComboBoxCellEditorå’ŒTextCellEditorã€?br />CellEditor一般用数组æ¥ä¿å­˜ï¼Œå¦‚æžœæŸä¸ªåˆ—ä¸éœ€è¦ç¼–辑,则寞®†è¯¥åˆ—çš„CellEditorè®¾äØ“nullã€?br />当CellEditor的数¾l„定义完åŽï¼Œå›_¯åˆ©ç”¨setCellEditors(CellEditor[] editors)æ–ÒŽ³•ž®†è¯¥æ•°ç»„讄¡½®åˆ°å¯¹åº”çš„TreeViewer或TableViewer中去。例如:

    CellEditor[] cellEditors  =   new  CellEditor[ 5 ];
    cellEditors[
0 ]  =   new  TextCellEditor(tableViewer.getTable());
    cellEditors[
1 ]  =   null ;
    cellEditors[
2 ]  =   new  ComboBoxCellEditor(tableViewer.getTable(),  new  String[]{ " first " ,  " second " ,  " third " ,  " forth " });
    cellEditors[
3 ]  =   new  CheckboxCellEditor(tableViewer.getTable());
    cellEditors[
4 ]  =   new  CustomizedTextCellEditor(tableViewer.getTable());
    tableViewer.setCellEditors(cellEditors);

其中CustomizedTextCellEditor是自定义的CellEditoråQŒé¿å…了讄¡½®valueæ—‰™€ æˆçš„空指针异常ã€?br />
protected class CustomizedTextCellEditor extends TextCellEditor{
    
public CustomizedTextCellEditor(Composite parent){
        
super(parent);
    }

    
protected void doSetValue(Object value) {
        
if(value == null)
            
return;
        
super.doSetValue(value);
    }
        
}


CellEditor负责外观åQŒå®ƒå¯¹è¦¾~–辑的模型信æ¯ä¸€æ— æ‰€çŸ¥ã€‚所以jface中引入了ICellModifier接å£åQŒå°†model与CellEditorè”系在一赗÷€‚äØ“äº†ç¡®å®šåœ¨CellModifier中的列,需è¦å®šä¹‰columnPropertiesçš„String[]数组åQŒç”¨ä»¥åŒºåˆ†ä¸åŒåˆ—对应的ä¸åŒå±žæ€§ã€‚ä‹É用setColumnProperties(String[] columnProperties)讄¡½®è¯¥å±žæ€§é›†ã€?/p>

ICellModifierå®šä¹‰äº†ä¸‰ä¸ªæŽ¥å£æ–¹æ³•:

public boolean canModify(Object element, String property);
该方法判断何时该列å¯ä»¥è¢«¾~–辑。其中element是对应的model。返回true表示此时该列å¯ä»¥è¢«ç¼–辑ã€?/p>

public Object getValue(Object element, String property);
该方法一般在activateCellEditor()时调用,用于讑֮šCellEditorçš„åˆå§‹å€¹{€‚其中element是对应的modelã€?/p>

此处虽然å¯ä»¥˜q”回Object¾cÕdž‹çš„引用,但是使用旉™œ€ž®å¿ƒåQŒç‰¹å®šçš„CellEditor仅接å—特定类型的Value。比如:
TextCellEditor对应String¾cÕdž‹çš„ValueåQ?br />ComboBoxCellEditor对应Integer¾cÕdž‹çš„ValueåQ?br />CheckBoxCellEditor对应Boolean¾cÕdž‹çš„ValueåQ?br />若返回了ä¸é€‚åˆçš„Value对象åQŒåˆ™ä¼šæŠ›å‡ºAssertionFailedExceptionã€?/p>

public void modify(Object element, String property, Object value);
该方法执行ä¿å­˜ä¿®æ”V€‚一般在saveEditorValue之类的方法中调用。此处的elementä¸å†æ˜¯modelåQŒè€Œæ˜¯Item¾cÕdž‹çš„引用。å–用对应的模型åQŒéœ€è¦ä‹Éç”?(Item) element).getData()æ–ÒŽ³•。一般此处的valueå€û|¼Œä¹Ÿå°±æ˜¯å½“å‰CellEditorçš„Valueå€û|¼Œä½¿ç”¨CellEditor.getValue()得到。å¦å¤–,在执行完更改åŽï¼Œéœ€è¦åˆ·æ–°å¯¹åº”çš„TableViewer或TreeVieweråQŒä‹Éåšå‡ºçš„æ›´æ–°å¯è§ã€?br />
org.eclipse.debug.internal.ui.elements.adapters.DefaultVariableCellModifier是ICellModifier的一个完整实玎ͼš

import org.eclipse.debug.core.DebugException;
import org.eclipse.debug.core.model.IVariable;
import org.eclipse.debug.internal.ui.DebugUIPlugin;
import org.eclipse.debug.internal.ui.DefaultLabelProvider;
import org.eclipse.debug.internal.ui.VariableValueEditorManager;
import org.eclipse.debug.ui.actions.IVariableValueEditor;
import org.eclipse.jface.viewers.ICellModifier;

/**
 * 
@since 3.2
 *
 
*/

public class DefaultVariableCellModifier implements ICellModifier {
    
    
/* (non-Javadoc)
     * @see org.eclipse.jface.viewers.ICellModifier#canModify(java.lang.Object, java.lang.String)
     
*/

    
public boolean canModify(Object element, String property) {
        
if (VariableColumnPresentation.COLUMN_VARIABLE_VALUE.equals(property)) {
            
if (element instanceof IVariable) {
                
return ((IVariable) element).supportsValueModification();
            }

        }

        
return false;
    }


    
/* (non-Javadoc)
     * @see org.eclipse.jface.viewers.ICellModifier#getValue(java.lang.Object, java.lang.String)
     
*/

    
public Object getValue(Object element, String property) {
        
if (VariableColumnPresentation.COLUMN_VARIABLE_VALUE.equals(property)) {
            
if (element instanceof IVariable) {
                IVariable variable 
= (IVariable) element;
                
try {
                    
return DefaultLabelProvider.escapeSpecialChars(variable.getValue().getValueString());
                }
 catch (DebugException e) {
                    DebugUIPlugin.log(e);
                }

            }

        }

        
return null;
    }


    
/* (non-Javadoc)
     * @see org.eclipse.jface.viewers.ICellModifier#modify(java.lang.Object, java.lang.String, java.lang.Object)
     
*/

    
public void modify(Object element, String property, Object value) {
        Object oldValue 
= getValue(element, property);
        
if (!value.equals(oldValue)) {
            
if (VariableColumnPresentation.COLUMN_VARIABLE_VALUE.equals(property)) {
                
if (element instanceof IVariable) {
                    IVariable variable 
= (IVariable) element;
                    IVariableValueEditor editor 
= VariableValueEditorManager.getDefault().getVariableValueEditor(variable.getModelIdentifier());
                    
if (value instanceof String) {
                        value 
= DefaultLabelProvider.encodeEsacpedChars((String)value);
                    }

                    
if (editor != null) {
                        
if  (editor.saveVariable(variable, (String) value, DebugUIPlugin.getShell())) {
                            
return;
                        }

                    }

                    
try {
                        variable.setValue((String) value);
                    }
 catch (DebugException e) {
                        DebugUIPlugin.errorDialog(DebugUIPlugin.getShell(), Messages.VariableColumnPresentation_4, Messages.VariableColumnPresentation_5, e.getStatus());
                    }

                }

            }

        }

    }


}


Hexise 2007-01-04 15:29 å‘表评论
]]>
GEF¾~–è¾‘å™¨çš„åŒºåŸŸåŠæ»šåЍæ¡http://www.aygfsteel.com/Hexise/archive/2006/12/29/90718.htmlHexiseHexiseFri, 29 Dec 2006 05:16:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90718.htmlhttp://www.aygfsteel.com/Hexise/comments/90718.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90718.html#Feedback2http://www.aygfsteel.com/Hexise/comments/commentRss/90718.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90718.html

GEF¾~–辑器是构架在Draw2Dçš„FigureCanvas上的,而FigureCanvas是swt中Canvas的孾c?

当得到FigureCanvas之åŽ,ž®±å¯ä»¥å¾—到GEF¾~–辑器的区域和GEF¾~–辑器内部画布的大å°:

¾~–辑器区域大ž®?FigureCanvas.getBounds();
˜q™æ˜¯˜q用了FigureCanvas是Canvaså­ç±»çš„特ç‚?调用SWTçš„Canvasçš„getBounds()æ–ÒŽ³•,匙°ƒç”¨Controlçš„getBounds()æ–ÒŽ³•.

ç”Õd¸ƒå¤§å°:FigureCanvas.getContents.getBounds();
˜q™æ˜¯˜q用了IFigureçš„getBounds()æ–ÒŽ³•, ˜q™ä¸¤ä¸ªåŒºåŸŸçŸ©å½¢ä¸å¯æØœæ·?

è‹¥è¦è§¦å‘GEF¾~–è¾‘å™¨çš„æ»šåŠ¨æ¡æ“ä½?仅需调用FigureCanvasçš„scrollToX(int hOffset)å’ŒscrollToY(int vOffset)å›_¯.

获å–FigureCanvas的方法也比较½Ž€å?通过EditPart.getViewer()获得EditPartViewer,一般情况下EditPartViewerçš„Controlž®±æ˜¯FigureCanvas.

列出代ç å¦‚下:

FigureCanvas canvas  =  (FigureCanvas)EditPart.getViewer().getControl();
canvas.scrollToX(
500 );
canvas.scrollToY(
600 );
System.out.println(canvas.getBounds());
System.out.println(canvas.getContents().getBounds());


Hexise 2006-12-29 13:16 å‘表评论
]]>
[Tip]ž®†Object数组转æ¢ä¸ºString数组http://www.aygfsteel.com/Hexise/archive/2006/12/29/90717.htmlHexiseHexiseFri, 29 Dec 2006 05:12:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90717.htmlhttp://www.aygfsteel.com/Hexise/comments/90717.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90717.html#Feedback0http://www.aygfsteel.com/Hexise/comments/commentRss/90717.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90717.html˜q™ä¸ªå‡½æ•°ç”¨æ³•¾l常å¿?.
(String[])ArrayList.toArray(new String[0]);



Hexise 2006-12-29 13:12 å‘表评论
]]>
[å¤ä¹ åŸºç¡€]Javaçš„äºŒå‰æ ‘é历æ“作(递归, éžé€’å½’)http://www.aygfsteel.com/Hexise/archive/2006/12/29/90713.htmlHexiseHexiseFri, 29 Dec 2006 05:01:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90713.htmlhttp://www.aygfsteel.com/Hexise/comments/90713.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90713.html#Feedback2http://www.aygfsteel.com/Hexise/comments/commentRss/90713.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90713.html阅读全文

Hexise 2006-12-29 13:01 å‘表评论
]]>
讄¡½®JFaceçš„Dialogæ ·å¼http://www.aygfsteel.com/Hexise/archive/2006/12/29/90708.htmlHexiseHexiseFri, 29 Dec 2006 04:53:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90708.htmlhttp://www.aygfsteel.com/Hexise/comments/90708.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90708.html#Feedback0http://www.aygfsteel.com/Hexise/comments/commentRss/90708.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90708.html¾l常性的,è‡ªå·±è®¾è®¡çš„å¯¹è¯æ¡†æ— æ³•改å˜å¤§å°,没有最大化最ž®åŒ–按钮,½{‰ç­‰.在哪里设¾|®è¿™äº›å±žæ€§å‘¢?

JFaceçš„Dialog¾l§æ‰¿äºŽWindow¾c?该类中有一æ–ÒŽ³•,讄¡½®Shell的样å¼?

setShellStyle

protected void setShellStyle(int newShellStyle)
Sets the shell style bits. This method has no effect after the shell is created.

The shell style bits are used by the framework method createShell when creating this window's shell.

Parameters:
newShellStyle - the new shell style bits


在Dialog的构造函æ•îC¸­è°ƒç”¨è¯¥æ–¹æ³?å›_¯æ›´æ”¹Dialog的样å¼?䏋䨓䏀ä¾?

import  org.eclipse.jface.dialogs.Dialog;
import  org.eclipse.swt.SWT;
import  org.eclipse.swt.browser.Browser;
import  org.eclipse.swt.layout.GridData;
import  org.eclipse.swt.widgets.Composite;
import  org.eclipse.swt.widgets.Control;
import  org.eclipse.swt.widgets.Shell;

public   class  BrowserDialog  extends  Dialog  {

    
private  String url;

    
public  BrowserDialog(Shell parent, String url)  {
        
super (parent);
        setShellStyle(getShellStyle() 
|  SWT.RESIZE  |  SWT.MAX);
        
this .url  =  url;
    }


    
protected  Control createContents(Composite parent)  {
        Browser browser 
=   new  Browser(parent, SWT.NONE);
        browser.setUrl(url);
        GridData gd 
=   new  GridData(GridData.FILL_BOTH);
        gd.minimumWidth 
=   600 ;
        gd.minimumHeight 
=   400 ;
        browser.setLayoutData(gd);
        
return  browser;
    }

}

import  org.eclipse.swt.SWT;
import  org.eclipse.swt.widgets.Display;
import  org.eclipse.swt.widgets.Shell;

public   class  TestDialog  {

    
public   static   void  main(String[] args)  {

        
final  Shell shell  =   new  Shell(SWT.DIALOG_TRIM  |  SWT.RESIZE  |  SWT.MIN  |  SWT.MAX);
        
final  Display display  =  shell.getDisplay();

        String path 
=   " C:/Temp/log.html " ;
        BrowserDialog dlg 
=   new  BrowserDialog(shell, path);
        dlg.open();

        
while  ( ! shell.isDisposed())  {
            
if  ( ! display.readAndDispatch())  {
                display.sleep();
            }

        }


    }

}


Hexise 2006-12-29 12:53 å‘表评论
]]>
eclipse创å¾Imageæ–ÒŽ³•http://www.aygfsteel.com/Hexise/archive/2006/12/29/90703.htmlHexiseHexiseFri, 29 Dec 2006 04:43:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90703.htmlhttp://www.aygfsteel.com/Hexise/comments/90703.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90703.html#Feedback0http://www.aygfsteel.com/Hexise/comments/commentRss/90703.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90703.html
1.使用Image(Device device, InputStream stream)构造函æ•?½CÞZ¾‹ä»£ç å¦‚下, path为图åƒç›¸å¯¹èµ\å¾?

private Image getImage(String path){
  
return new Image(Display.getCurrent(), getClass().getResourceAsStream(path));
}

2.使用ImageDescriptorçš„createImage()æ–ÒŽ³•,½CÞZ¾‹ä»£ç å¦‚下,path为图åƒç›¸å¯¹èµ\å¾?

 private Image getImage(String path){
  URL url 
= null;
  
try{
   url 
= new URL(Activator.getDefault().getDescriptor().getInstallURL(), path);
  }
catch(MalformedURLException e){
   e.printStackTrace();
  }

  ImageDescriptor imageDescriptor 
= ImageDescriptor.createFromURL(url);
  
return imageDescriptor.createImage();
 }

或�

private Image getImage(String path){
   ImageDescriptor desc 
= AbstractUIPlugin.imageDescriptorFromPlugin(ID, path);
   
return desc.createImage();
}


Hexise 2006-12-29 12:43 å‘表评论
]]>
eclipseä¸­çš„ç›¸å¯¹åæ ‡å’Œç»å¯¹åæ ?/title><link>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90702.html</link><dc:creator>Hexise</dc:creator><author>Hexise</author><pubDate>Fri, 29 Dec 2006 04:26:00 GMT</pubDate><guid>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90702.html</guid><wfw:comment>http://www.aygfsteel.com/Hexise/comments/90702.html</wfw:comment><comments>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90702.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/Hexise/comments/commentRss/90702.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/Hexise/services/trackbacks/90702.html</trackback:ping><description><![CDATA[ <p>è½¬æ¢æˆ?font color="#ff0000">ç›¸å¯¹åæ ‡,</font>è¦è¿ç”¨translateToRelative(Point point)æ–ÒŽ³•.</p> <p>例如,在Eclipse Editor视图中加入Figure,需è¦è®¡½Ž—出相对于HostFigureçš„åæ ?æ‰èƒ½æ­£ç¡®ž®†figure攑֜¨é¼ æ ‡ç‚¹å‡»çš„ä½¾|?å¯ä»¥å¦‚下˜q™æ ·å?</p> <p>在getCreateCommand(CreateRequest request)æ–ÒŽ³•ä¸?加入如下语å¥:</p> <p>Point location = request.getLocation().getCopy();<br />getHostFigure().translateToRelative(location);<br /><br />如此获得的locationž®±æ˜¯ç›¸å¯¹äºŽHostFigureçš„åæ ?<br /><br /><br /><br /><br /></p> <p>能够获得当å‰å…‰æ ‡<font color="#ff0000">¾l坹忠‡</font>的方法是:<br /><br />Display.getDefault().getCursorLocation()</p> <img src ="http://www.aygfsteel.com/Hexise/aggbug/90702.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/Hexise/" target="_blank">Hexise</a> 2006-12-29 12:26 <a href="http://www.aygfsteel.com/Hexise/archive/2006/12/29/90702.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item><item><title>Eclipseæ’äšg如何åˆäh–°èµ„æº½Ž¡ç†å™?http://www.aygfsteel.com/Hexise/archive/2006/12/29/90700.htmlHexiseHexiseFri, 29 Dec 2006 04:19:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90700.htmlhttp://www.aygfsteel.com/Hexise/comments/90700.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90700.html#Feedback0http://www.aygfsteel.com/Hexise/comments/commentRss/90700.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90700.html最˜q‘项目中出现了一个bug,æç¤ºæ˜¯Resource can not sync with file system.是文件系¾lŸä¸åŒæ­¥çš„é—®é¢?éœ€è¦æ‰‹åŠ¨åˆ·æ–îC¸€ä¸‹èµ„æºç®¡ç†å™¨.

åˆäh–°èµ„æº½Ž¡ç†å™¨è°ƒç”¨æ–¹æ³?

RefreshLocal

public void refreshLocal(int depth, IProgressMonitor monitor)
                  throws CoreException

Refreshes the resource hierarchy from this resource and its children (to the specified depth) relative to the local file system. Creations, deletions, and changes detected in the local file system will be reflected in the workspace's resource tree. This resource need not exist or be local.
This method may discover changes to resources; any such changes will be reported in a subsequent resource change event.

If a new file or directory is discovered in the local file system at or below the location of this resource, any parent folders required to contain the new resource in the workspace will also be created automatically as required.

This method is long-running; progress and cancellation are provided by the given progress monitor.


Parameters:
depth - valid values are DEPTH_ZERO, DEPTH_ONE, or DEPTH_INFINITE
monitor - a progress monitor, or null if progress reporting is not desired
Throws:
CoreException - if this method fails. Reasons include:
Resource changes are disallowed during certain types of resource change event notification. See IResourceChangeEvent for more details.
OperationCanceledException - if the operation is canceled. Cancelation can occur even if no progress monitor is provided.
See Also:
DEPTH_ZERO, DEPTH_ONE, DEPTH_INFINITE, IResourceRuleFactory.refreshRule(IResource)

该方法ä½äºŽorg.eclipse.core.resources.IResource

我的调用æ–ÒŽ³•æ˜?

ResourcesPlugin.getWorkspace().getRoot().refreshLocal(IResource.DEPTH_INFINITE, monitor);



Hexise 2006-12-29 12:19 å‘表评论
]]>
SWT中获å–å­—½W¦ä¸²å ç”¨åƒç´ æ•?/title><link>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90683.html</link><dc:creator>Hexise</dc:creator><author>Hexise</author><pubDate>Fri, 29 Dec 2006 03:21:00 GMT</pubDate><guid>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90683.html</guid><wfw:comment>http://www.aygfsteel.com/Hexise/comments/90683.html</wfw:comment><comments>http://www.aygfsteel.com/Hexise/archive/2006/12/29/90683.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/Hexise/comments/commentRss/90683.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/Hexise/services/trackbacks/90683.html</trackback:ping><description><![CDATA[å¯ä»¥ä½¿ç”¨GC¾cÈš„getAdvanceWidth(char ch)获å–当å‰å­—符所å çš„åƒç´ å®½åº¦.<br /><p><strong>getAdvanceWidth</strong></p><p><strong>          </strong>public int <b>getAdvanceWidth</b>(char ch) </p><dl><dd>Returns the <em>advance width</em> of the specified character in the font which is currently selected into the receiver. <p>The advance width is defined as the horizontal distance the cursor should move after printing the character in the selected font. </p><p></p></dd><dd><dl><dt><b>Parameters:</b></dt><dd>ch - the character to measure </dd><dt><b>Returns:</b></dt><dd>the distance in the x direction to move past the character before painting the next </dd><dt><b>Throws:</b></dt><dd><a title="class in org.eclipse.swt" ><u>SWTException</u></a> - <ul><li>ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed </li></ul></dd></dl></dd></dl><p>å¯ä»¥å¦‚下é¢çš„½E‹åºä½¿ç”¨è¯¥å‡½æ•?</p><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_65_254_Open_Image" onclick="this.style.display='none'; Codehighlighter1_65_254_Open_Text.style.display='none'; Codehighlighter1_65_254_Closed_Image.style.display='inline'; Codehighlighter1_65_254_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_65_254_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_65_254_Closed_Text.style.display='none'; Codehighlighter1_65_254_Open_Image.style.display='inline'; Codehighlighter1_65_254_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> getStringWidth(String string, Control control) </span><span id="Codehighlighter1_65_254_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/images/dot.gif" /></span><span id="Codehighlighter1_65_254_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> width </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    GC gc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> GC(control);<br /><img id="Codehighlighter1_153_220_Open_Image" onclick="this.style.display='none'; Codehighlighter1_153_220_Open_Text.style.display='none'; Codehighlighter1_153_220_Closed_Image.style.display='inline'; Codehighlighter1_153_220_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_153_220_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_153_220_Closed_Text.style.display='none'; Codehighlighter1_153_220_Open_Image.style.display='inline'; Codehighlighter1_153_220_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000"> (</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">; i </span><span style="COLOR: #000000"><</span><span style="COLOR: #000000"> string.length(); i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">) </span><span id="Codehighlighter1_153_220_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/images/dot.gif" /></span><span id="Codehighlighter1_153_220_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> c </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> string.charAt(i);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />        width </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> gc.getAdvanceWidth(c);<img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    gc.dispose();<img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> width;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><br />或者更通用çš?其中string是目标字½W¦ä¸²,font是你è¦è®¾¾l™å­—½W¦ä¸²çš„字体对è±?<br /><br /><div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img id="Codehighlighter1_58_394_Open_Image" onclick="this.style.display='none'; Codehighlighter1_58_394_Open_Text.style.display='none'; Codehighlighter1_58_394_Closed_Image.style.display='inline'; Codehighlighter1_58_394_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_58_394_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_58_394_Closed_Text.style.display='none'; Codehighlighter1_58_394_Open_Image.style.display='inline'; Codehighlighter1_58_394_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedBlock.gif" align="top" /><span style="COLOR: #0000ff">public</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">static</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> getStringWidth(String string, Font font)</span><span id="Codehighlighter1_58_394_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/images/dot.gif" /></span><span id="Codehighlighter1_58_394_Open_Text"><span style="COLOR: #000000">{<img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> width </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    Shell shell </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Shell();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    Label label </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> Label(shell, SWT.NONE);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    label.setFont(font);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    GC gc </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> </span><span style="COLOR: #0000ff">new</span><span style="COLOR: #000000"> GC(label);<br /><img id="Codehighlighter1_247_333_Open_Image" onclick="this.style.display='none'; Codehighlighter1_247_333_Open_Text.style.display='none'; Codehighlighter1_247_333_Closed_Image.style.display='inline'; Codehighlighter1_247_333_Closed_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_247_333_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_247_333_Closed_Text.style.display='none'; Codehighlighter1_247_333_Open_Image.style.display='inline'; Codehighlighter1_247_333_Open_Text.style.display='inline';" src="http://www.aygfsteel.com/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">for</span><span style="COLOR: #000000">(</span><span style="COLOR: #0000ff">int</span><span style="COLOR: #000000"> i</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">0</span><span style="COLOR: #000000">;i</span><span style="COLOR: #000000"><</span><span style="COLOR: #000000">string.length();i</span><span style="COLOR: #000000">++</span><span style="COLOR: #000000">)</span><span id="Codehighlighter1_247_333_Closed_Text" style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.aygfsteel.com/images/dot.gif" /></span><span id="Codehighlighter1_247_333_Open_Text"><span style="COLOR: #000000">{<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />          </span><span style="COLOR: #0000ff">char</span><span style="COLOR: #000000"> c </span><span style="COLOR: #000000">=</span><span style="COLOR: #000000"> string.charAt(i);<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />          width </span><span style="COLOR: #000000">+=</span><span style="COLOR: #000000"> gc.getAdvanceWidth(c);<img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: #000000"><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    gc.dispose();<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    shell.dispose();<img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/InBlock.gif" align="top" />    </span><span style="COLOR: #0000ff">return</span><span style="COLOR: #000000"> width;<br /><img src="http://www.aygfsteel.com/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />}</span></span></div><img src ="http://www.aygfsteel.com/Hexise/aggbug/90683.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/Hexise/" target="_blank">Hexise</a> 2006-12-29 11:21 <a href="http://www.aygfsteel.com/Hexise/archive/2006/12/29/90683.html#Feedback" target="_blank" style="text-decoration:none;">å‘表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> Ö÷Õ¾Ö©Öë³ØÄ£°å£º <a href="http://" target="_blank">ÓéÀÖ</a>| <a href="http://" target="_blank">½¨Ê¼ÏØ</a>| <a href="http://" target="_blank">¶Ø»¯ÊÐ</a>| <a href="http://" target="_blank">ºÓ±±Çø</a>| <a href="http://" target="_blank">ÐÞË®ÏØ</a>| <a href="http://" target="_blank">ÀÖÖÁÏØ</a>| <a href="http://" target="_blank">Îä¸ÔÊÐ</a>| <a href="http://" target="_blank">ÌúÁëÏØ</a>| <a href="http://" target="_blank">³É°²ÏØ</a>| <a href="http://" target="_blank">°ØÏçÏØ</a>| <a href="http://" target="_blank">ϼÆÖÏØ</a>| <a href="http://" target="_blank">ÏʳÇ</a>| <a href="http://" target="_blank">°×Ë®ÏØ</a>| <a href="http://" target="_blank">¶¼²ýÏØ</a>| <a href="http://" target="_blank">ººÔ´ÏØ</a>| <a href="http://" target="_blank">ÄÏ¿µÊÐ</a>| <a href="http://" target="_blank">´ï×ÎÏØ</a>| <a href="http://" target="_blank">Í­¹ÄÏØ</a>| <a href="http://" target="_blank">°²ÈÊÏØ</a>| <a href="http://" target="_blank">ÓÜÉçÏØ</a>| <a href="http://" target="_blank">Ó¦³ÇÊÐ</a>| <a href="http://" target="_blank">ÁÚË®</a>| <a href="http://" target="_blank">ÕýÄþÏØ</a>| <a href="http://" target="_blank">Ä«ÍÑÏØ</a>| <a href="http://" target="_blank">¹ÉƱ</a>| <a href="http://" target="_blank">»³°²ÏØ</a>| <a href="http://" target="_blank">캵ÂÏØ</a>| <a href="http://" target="_blank">ÓÀ¿µÊÐ</a>| <a href="http://" target="_blank">¹ã²ýÏØ</a>| <a href="http://" target="_blank">Îä¸ÔÊÐ</a>| <a href="http://" target="_blank">ÄϳÇÏØ</a>| <a href="http://" target="_blank">ÏÃÃÅÊÐ</a>| <a href="http://" target="_blank">ÖÜÄþÏØ</a>| <a href="http://" target="_blank">÷ºÓ¿ÚÊÐ</a>| <a href="http://" target="_blank">ÆÕ¸ñÏØ</a>| <a href="http://" target="_blank">¹ðÁÖÊÐ</a>| <a href="http://" target="_blank">Ǭ°²ÏØ</a>| <a href="http://" target="_blank">äÒÖÐÏØ</a>| <a href="http://" target="_blank">ÕÄÖÝÊÐ</a>| <a href="http://" target="_blank">°¢¿ËÌÕÏØ</a>| <a href="http://" target="_blank">³çÒåÏØ</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>