George World

          技術(shù)改變明天,創(chuàng)新塑造未來(lái)! i(at)huadev.com Follow Me: http://t.sina.com.cn/georgeworld

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            28 隨筆 :: 0 文章 :: 5 評(píng)論 :: 0 Trackbacks

          2010年9月9日 #

          使用NetBeans Platform開發(fā)軟件,你會(huì)發(fā)現(xiàn)軟件標(biāo)題欄總是類似這樣的:
          NetBeans Platform build 20120812
          那么,如果將NetBeans Platform應(yīng)用的標(biāo)題欄換成自己的內(nèi)容呢,Come on,下面一步一步來(lái):

          第一步:進(jìn)入你的NetBeans Platform工程目錄,如下圖:

          第二步:進(jìn)入dist目錄,將發(fā)布包解壓縮,如下圖:


          第三步:以此進(jìn)入如下目錄:


          第四步:將org-netbeans-core-windows_testnetbeanssuite.jar再解壓縮,然后逐級(jí)進(jìn)入解壓縮后的目錄,如下圖:


          第五步:修改Bundle_testnetbeanssuite.properties文件中的標(biāo)題信息,如下:

          CTL_MainWindow_Title=George Studio
          CTL_MainWindow_Title_No_Project
          =George Software Demo


          第六步,刪除原來(lái)的TestNetBeansSuite\dist\testnetbeanssuite\testnetbeanssuite\testnetbeanssuite\modules\locale目錄下的org-netbeans-core-windows_testnetbeanssuite.jar文件,然后將
          剛才解壓縮后的TestNetBeansSuite\dist\testnetbeanssuite\testnetbeanssuite\testnetbeanssuite\modules\locale\org-netbeans-core-windows_testnetbeanssuite文件夾,打包為org-netbeans-core-windows_testnetbeanssuite.jar文件,放到原來(lái)org-netbeans-core-windows_testnetbeanssuite.jar文件所在的目錄,注意,打包后,org-netbeans-core-windows_testnetbeanssuite.jar內(nèi)的文件目錄應(yīng)該是這樣的:


          以上步驟完成后,備份新打包的這個(gè)org-netbeans-core-windows_testnetbeanssuite.jar文件,以備下次使用。

          然后,返回:\TestNetBeansSuite\dist\testnetbeanssuite\testnetbeanssuite\bin,運(yùn)行 testnetbeanssuite.exe,這時(shí)候,
          你看到啟動(dòng)的NetBeans Platform應(yīng)用,應(yīng)經(jīng)是剛才自己設(shè)置的標(biāo)題了,如下圖:



          特別說(shuō)明:
          如果你看到的應(yīng)用標(biāo)題還是原來(lái)的老標(biāo)題,不是你設(shè)置的新標(biāo)題,那么肯定是NetBeans Platform緩存的問(wèn)題,請(qǐng)刪除:
          C:\Users\gao\AppData\Roaming 目錄下的以你的應(yīng)用名為名字的文件夾,對(duì)于我的這個(gè)例子,就是:
          C:\Users\gao\AppData\Roaming\.testnetbeanssuite

          Mac OS X下,步驟相同,不同的是刪除NetBeans Platform緩存文件夾的路徑不一樣。
          至于Mac OS X下NetBeans Platform應(yīng)用的緩存目錄,我沒(méi)有去查看,用OSX的同學(xué)可以自己去找一下緩存目錄。



          posted @ 2012-09-12 17:29 George-tech 閱讀(1652) | 評(píng)論 (0)編輯 收藏

          NetBeans Platform ,very good,使用它開發(fā)桌面軟件很方便,但是默認(rèn)基于NetBeans Platform開發(fā)的軟件,啟動(dòng)屏圖片都是NetBeans自己的,如何換成我們自己的呢?按照如下步驟來(lái):

          第一步:打開你的NetBeans Platform工程目錄,找到branding文件夾,如下圖:

          第二步:逐級(jí)進(jìn)入branding目錄下的startup文件夾,如下圖:


          第三步:在該目錄下添加一個(gè)啟動(dòng)屏圖片,如下圖:


          第四步:打包發(fā)布NetBeans Platform應(yīng)用,如下圖:


          第五步:到dist目錄下面,解壓縮發(fā)布包,運(yùn)行剛開生成的NetBeans Platform應(yīng)用,如下圖:





          第六步:欣賞你的Splash 啟動(dòng)屏幕吧










          posted @ 2012-09-12 16:38 George-tech 閱讀(1194) | 評(píng)論 (0)編輯 收藏

          MyEclipse最大的優(yōu)點(diǎn)是,開發(fā)web應(yīng)用時(shí),可以輕松地做到:修改Java類后,在瀏覽器中刷新頁(yè)面立刻就可以看到修改的效果,不用手動(dòng)重啟Web Server。

          但是MyEclipse除此之外其他方面的功能,都與NetBeans差距很大。




          =================================================================================================

          NetBeans中也可以做到Web 應(yīng)用修改后“熱部署”,但是我4G的內(nèi)存,每次修改后,NetBeans熱部署都會(huì)內(nèi)存溢出。

          今天把NetBeans的各個(gè)角落菜單翻了一遍,終于找到了NetBeans中正確“熱部署”的步驟。
          在NetBeans中開發(fā)Web項(xiàng)目是,應(yīng)該用“調(diào)試”狀態(tài)來(lái)運(yùn)行Web應(yīng)用,這樣就可以在修改java代碼后,按Alt + D,然后再按Y鍵來(lái)熱部署更改后的文件。
          注意,一定要把Web項(xiàng)目屬性中的選項(xiàng):“在保存時(shí)部署”這個(gè)選項(xiàng)個(gè)取消,不然會(huì)保存java文件時(shí)很慢,然后就內(nèi)存溢出了,所以,一定要把這個(gè)選項(xiàng)給取消掉。




          posted @ 2012-09-12 15:27 George-tech 閱讀(2784) | 評(píng)論 (1)編輯 收藏

          如果在Struts2的Action中有一個(gè)變量: private String CCustomerInfo cCustomerInfo;

          則使用MyEclipse生成的它的getter方法是:getCCustomerInfo()

          生成的setter方法是:setCCustomerInfo(CCustomerInfo cCustomerInfo);

           

          針對(duì)類似“aTestClass”這樣的類變量,IDE生成的getter和setter無(wú)法與Struts2頁(yè)面上的輸入框name綁定,遇到這種情況,應(yīng)該將“aTestClass”這樣的類變量修改成“testClass”這樣的變量名,然后在生成它的getter和setter,生成的getter和setter方法應(yīng)該是:

          getTestClass()、setTestClass(ATestClass testClass)

          posted @ 2010-10-23 13:41 George-tech 閱讀(814) | 評(píng)論 (0)編輯 收藏

          使用sa用戶登錄查詢分析器,然后運(yùn)行如下SQL:

          exec sp_changeobjectowner 'Table_Name,'User_Name' -- 第一個(gè)參數(shù):表名字,第二個(gè)參數(shù):用戶

          posted @ 2010-09-10 11:39 George-tech 閱讀(169) | 評(píng)論 (0)編輯 收藏

          設(shè)置Struts2的<s:Datetimepicker />標(biāo)簽的樣式,實(shí)例如下:

          <script language="javascript" type="text/javascript">
                      function setDatetimepickerStyle(){//beginDate是時(shí)間選擇框的ID
                          document.getElementById("beginDate").childNodes(1).style.width = "199px";  //寬度
                      }
                      dojo.addOnLoad(setDatetimepickerStyle);
                  </script>
          posted @ 2010-09-09 11:59 George-tech 閱讀(683) | 評(píng)論 (0)編輯 收藏

          <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" ">
          <html xmlns="
          >
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
          <title>漂浮層代碼-演示</title>
          <script language="javascript" type="text/javascript">
          var suspendDivWidth = "100";  //漂浮層寬度
          var suspendDivHeight = "300";  //漂浮層高度
          var qqNumberArray = new Array("1205640864","1491012702");  //QQ號(hào)碼列表

          var lastScrollY=0;
          function heartBeat(){
              var diffY,percent;
              if (document.documentElement && document.documentElement.scrollTop){
                  diffY = document.documentElement.scrollTop;
              }
              else if (document.body){
                  diffY = document.body.scrollTop;
              }
              else{
                  /*Netscape stuff*/
              }
              percent=.1*(diffY-lastScrollY);
              if(percent>0){
                  percent=Math.ceil(percent);
              }
              else{
                  percent=Math.floor(percent);
              }
              document.getElementById("georgeFloatingLayer_Div1").style.top=parseInt(document.getElementById("georgeFloatingLayer_Div1").style.top)+percent+"px";
              document.getElementById("georgeFloatingLayer_Div2").style.top=parseInt(document.getElementById("georgeFloatingLayer_Div1").style.top)+percent+"px";
              lastScrollY=lastScrollY+percent;
          }

          //合成浮動(dòng)層的內(nèi)容
          function getContentOfFloatingLayer(){
              var floatingLayerContent = "";
              for (var i in qqNumberArray){
                  floatingLayerContent = floatingLayerContent + "<a target=\"_blank\" href=\"
          ><img border=\"0\" src=\" alt=\"點(diǎn)擊這里給我發(fā)消息\" title=\"點(diǎn)擊這里給我發(fā)消息\"></a><br />";
              }
              floatingLayerContent = "<fieldset id=\"georgeFloatingLayerFieldset\" style=\"-moz-border-radius:8px; text-align:center;\"><legend>在線聯(lián)系</legend>"+floatingLayerContent+"</fieldset>";
              return floatingLayerContent;
          }

          var georgeFloatingLayer_1="<DIV id=\"georgeFloatingLayer_Div1\" style='left:0;POSITION:absolute;TOP:10px;width:0;height:0;border:0px;'></div>"
          var georgeFloatingLayer_2="<DIV id=\"georgeFloatingLayer_Div2\" style='background-color:#FFFFFF;right:2px;POSITION:absolute;TOP:10px;width:"+suspendDivWidth+"px;height:"+suspendDivHeight+"px;border:0;'>"+getContentOfFloatingLayer()+"</div>";
          document.write(georgeFloatingLayer_1);
          document.write(georgeFloatingLayer_2);

          window.setInterval("heartBeat()",1);
          </script>
          </head>

          <body>
          <div style="height:900px; background-color:#FF0000; border:solid #3399FF 1px;">ffffffffffff</div>
          </body>
          </html>


          主站蜘蛛池模板: 新干县| 会理县| 武鸣县| 洞头县| 华池县| 巴林右旗| 安丘市| 衡阳县| 迁安市| 滕州市| 济源市| 临湘市| 江陵县| 民权县| 安化县| 武穴市| 潞西市| 绵竹市| 神农架林区| 台湾省| 临沧市| 新乡市| 无极县| 绵竹市| 淮安市| 台东市| 淅川县| 哈巴河县| 三门峡市| 台南县| 饶河县| 黑水县| 宜兰市| 洮南市| 政和县| 扶绥县| 西林县| 沙田区| 保定市| 明星| 滁州市|