ï»??xml version="1.0" encoding="utf-8" standalone="yes"?>国产一区导航,色av男人的天堂免费在线,亚洲免费黄色http://www.aygfsteel.com/Hexise/category/18792.html业精于勤荒于å¬?行成于思毁于随zh-cnWed, 28 Feb 2007 23:19:56 GMTWed, 28 Feb 2007 23:19:56 GMT60JFace 可编辑的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#Feedback1http://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 发表评论
]]>
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 发表评论
]]>
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><item><title>SWT中的日期选择控äšghttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90676.htmlHexiseHexiseFri, 29 Dec 2006 03:11:00 GMThttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90676.htmlhttp://www.aygfsteel.com/Hexise/comments/90676.htmlhttp://www.aygfsteel.com/Hexise/archive/2006/12/29/90676.html#Feedback2http://www.aygfsteel.com/Hexise/comments/commentRss/90676.htmlhttp://www.aygfsteel.com/Hexise/services/trackbacks/90676.html阅读全文

Hexise 2006-12-29 11:11 发表评论
]]>
Ö÷Õ¾Ö©Öë³ØÄ£°å£º ÑÎÍ¤ÏØ| ³çÐÅÏØ| ÁéèµÏØ| º£ÄÏÊ¡| ¹«Ö÷ÁëÊÐ| ÎåÌ¨ÏØ| ÎýÁÖºÆÌØÊÐ| »´ÄÏÊÐ| Î÷ÎÚÖéÄÂÇ߯ì| ͬ½­ÊÐ| ÕýÏâ°×Æì| Âó¸ÇÌáÏØ| ÁÙÇåÊÐ| °ÍÄÏÇø| ³£ÊìÊÐ| °¢¿Ë| ϼÆÖÏØ| ¿­ÀïÊÐ| ÇØ°²ÏØ| ÓÜÉçÏØ| ¡°²ÏØ| вÌÏØ| Ï¿½­ÏØ| ͨÖÝÊÐ| ÎÚÀ¼ÏØ| ºâÉ½ÏØ| ÓÈÏªÏØ| Õű±ÏØ| ÄÉÓºÏØ| ÈýÃÅÏ¿ÊÐ| ¼ªÁÖÊÐ| Ê©µéÏØ| ¹ÌÕòÏØ| ·ö·çÏØ| ´óÇìÊÐ| Ã×Ò×ÏØ| ÅíË®| ÄÚÏçÏØ| ƽÁ¹ÊÐ| ºÓÇúÏØ| Èç¶«ÏØ|