<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 0, 文章 - 5, 評論 - 1, 引用 - 0
    數(shù)據(jù)加載中……

    玩轉(zhuǎn)SWT的StyledText

      在大多數(shù)編程工具中都會有這樣的功能,輸入了在工具中特定的關(guān)鍵字后,會以其它顏色或加粗顯示。這個(gè)功能對將枯燥的程序代碼變的清晰易讀。

      Eclipse中當(dāng)然也包含這個(gè)功能。我們知道,Eclipse是以SWT為基礎(chǔ)建立起來的,那么我們是不是也可以利用SWT來實(shí)現(xiàn)這個(gè)功能呢?

      StyledText--這是SWT包中的一個(gè)基礎(chǔ)組件,就如同它的名字定義的那樣,可以在它之以前顯示各種樣式的字體。如下代碼:

    ?1 // ?創(chuàng)建一個(gè)帶滾動條的文本框
    ?2 StyledText?text? = ?
    ?3 ???? new ?StyledText(
    ?4 ????????shell,
    ?5 ????????SWT.WRAP
    ?6 ???????? | ?SWT.BORDER
    ?7 ???????? | ?SWT.H_SCROLL
    ?8 ???????? | ?SWT.V_SCROLL);
    ?9
    10 // ?設(shè)置要顯示的文字
    11 text.setText( " 歡迎光臨六月天 " );
    12
    13 // ?加粗顯示“六月天”三個(gè)字
    14 this .txtContext.setStyleRange(getHighlightStyle( 4 ,? " 六月天 " .length()));
    15
    16 /**
    17 *?取加粗文字對象
    18 *? @param ?startOffset
    19 *? @param ?length
    20 *? @return ?StyleRange
    21 */

    22 private ?StyleRange?getHighlightStyle( int ?startOffset,? int ?length)? {
    23 ????StyleRange?styleRange? = ? new ?StyleRange();
    24 ????styleRange.start? = ?startOffset;
    25 ????styleRange.length? = ?length;
    26 ????
    27 ????styleRange.fontStyle? = ?SWT.BOLD;
    28 ????
    29 ???? return ?styleRange;
    30 }

    31
    32 當(dāng)然,我們也可以象Eclipse中那樣,改變文字顏色:
    33
    34 ?程序代碼
    35 // ?將“六月天”三個(gè)字改為藍(lán)色顯示
    36 this .txtContext.setStyleRange(
    37 ????getColorStyle( 4 ,? " 六月天 " .length(),?
    38 ???? this .shell.getDisplay().getSystemColor(SWT.COLOR_BLUE)));
    39
    40 /**
    41 *?取文字顏色對象
    42 *? @param ?startOffset
    43 *? @param ?length
    44 *? @param ?color
    45 *? @return
    46 */

    47 private ?StyleRange?getColorStyle( int ?startOffset,? int ?length,?Color?color)? {
    48 ????StyleRange?styleRange? = ? new ?StyleRange(startOffset,?length,?color,? null );
    49 ????styleRange.fontStyle? = ?SWT.BOLD;
    50 ???? return ?styleRange;
    51 }

    52

      除此之外,我們還可以改變文字的背景色,及加下劃線,刪除線等。

      雖然StyledText為我們提供了如此多的文字風(fēng)格,但總覺得還缺少對圖像的支持。不過聽說,Eclipse3.2版的SWT已經(jīng)提供了對圖像的支持。改天試試。

    posted on 2006-07-28 15:42 hiswing 閱讀(6251) 評論(1)  編輯  收藏 所屬分類: j2se開發(fā)

    評論

    # dd  回復(fù)  更多評論   

    adsfaa
    2014-11-04 15:45 | ddddddddddddd

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲AV无码专区国产乱码不卡 | 一二三四在线观看免费高清中文在线观看 | 永久免费观看黄网站| 精品国产麻豆免费网站| 亚洲色大情网站www| 日韩一区二区免费视频| 亚洲Aⅴ在线无码播放毛片一线天 亚洲avav天堂av在线网毛片 | 亚洲一卡2卡3卡4卡乱码 在线| 无码国产精品一区二区免费 | 亚洲黄片手机免费观看| 国产亚洲美女精品久久久2020| 中文字幕在线免费观看视频| 一本色道久久综合亚洲精品| 波多野结衣免费一区视频| 亚洲天堂久久精品| 黄页网站免费观看| 亚洲AV无码国产剧情| 国产精品亚洲视频| 国产精品视频白浆免费视频| 亚洲综合激情另类小说区| av无码国产在线看免费网站| 亚洲人成电影网站色www| 亚洲AV无码乱码精品国产| 永久免费AV无码网站国产| 亚洲神级电影国语版| 女人18毛片水真多免费播放| 国产91成人精品亚洲精品| 国产免费牲交视频| 在线观看免费播放av片| 亚洲砖码砖专无区2023| 久久激情亚洲精品无码?V| 亚洲免费视频观看| 免费大片av手机看片| 亚洲视频在线观看| 国产aa免费视频| 色猫咪免费人成网站在线观看| 亚洲欧洲无码AV不卡在线| 最新国产AV无码专区亚洲| 无码国产精品一区二区免费式直播 | 亚洲avav天堂av在线网爱情| 亚洲国产激情一区二区三区|