2011年11月30日 星期三

WIN7要如何開啟隱藏檔

有兩個方法可以參考~


1.在任何資料夾中,請按一下Alt鍵,上方視窗會出現[工具列]
接著點選[工具]=>選擇[資料夾選項]=>接著在[檢視]頁籤中可以看到[隱藏檔案和資料夾]選擇[顯示隱藏的檔案、資料夾及磁碟機]也可以唷。


2.在任何資料夾中,點選左上角的[組合管理]=>選擇[資料夾和搜尋選項]=>接著在[檢視]頁籤中可以看到[隱藏檔案和資料夾]選擇[顯示隱藏的檔案、資料夾及磁碟機]



[C#] 畫縮圖詭異的情況

 Peggy Yang的學習筆記




因為工作上的需要,要把使用者手繪的圖先處理為縮圖,再印至出來。
不過就在印出來的時後出現讓我很confuse的事情。

*_Image 是原圖檔

Image printImage = _Image.GetThumbnailImage(
                                                            Width,
                                                            Height,
                                                            null,
                                                            IntPtr.Zero
                                                       );
pGraphics.DrawImage(printImage, new Point(pLocation.X, pLocation.Y - 8));

這樣的結果在我 win xp 32bit的環境下,列印得情況有誤,如下圖(上方手繪的軌跡圖):












一模一樣的程式在我 win 7 64bit的環境下,列印得情況正確,如下圖(上方手繪的軌跡圖):














這樣我非常的不開心,怎麼會發生這種[掉漆]的情況,明明一樣的code竟然有不同的反應。
本來想要放棄的,但是這是要安裝在客戶端的應用程式,誰知道使用者的環境是什麼情境,讓我心裡擔憂的很,後來左查右查,上試下試,一度懷疑是GetThumbnailImage的問題,也懷疑是解析度的問題,try到最後就從DrawImage下手,終於找到一勞永逸的方法。

只要DrawImage在的方法裡,指定畫圖的寬及高即可。

Image printImage = _Image.GetThumbnailImage(
                                                             Width,
                                                             Height,
                                                             null,
                                                             IntPtr.Zero
                                                 );
pGraphics.DrawImage(printImage, pLocation.X, pLocation.Y - 8, printImage.Width, printImage.Height);

2011年11月15日 星期二

在MAC上安裝無蝦米

我一直都是用無蝦米輸入法,之前在MAC上只能用注音,對我來說還真的是滿吃力的。
今天趁比較有空就來突破一下冏境,終於讓我順利又爽快的打中文字了 耶~

參考作法:
http://macuknow.com/node/5087

2011年11月2日 星期三

IPhone - Objective C 學習參考網站




    iOS开发者















Using TBXML have Link error

using TBXML have the error:

Undefined symbols for architecture i386:
  "_deflateInit2_", referenced from:
      -[ASIDataCompressor setupStream] in ASIDataCompressor.o
  "_deflateEnd", referenced from:
      -[ASIDataCompressor closeStream] in ASIDataCompressor.o
  "_deflate", referenced from:
      -[ASIDataCompressor compressBytes:length:error:shouldFinish:] in ASIDataCompressor.o
  "_inflateInit2_", referenced from:
      -[ASIDataDecompressor setupStream] in ASIDataDecompressor.o
  "_inflateEnd", referenced from:
      -[ASIDataDecompressor closeStream] in ASIDataDecompressor.o
  "_inflate", referenced from:
      -[ASIDataDecompressor uncompressBytes:length:error:] in ASIDataDecompressor.o
  "_OBJC_CLASS_$_OMAppMeasurement", referenced from:
      objc-class-ref in OmnitureService.o

ANS:
1 [Link Binary With Libaries] Add libz.1.5.dylib
http://stackoverflow.com/questions/7118474/help-me-out-with-error-deflateinit2

2.Add Libraries - step by step:
http://allseeing-i.com/ASIHTTPRequest/Setup-instructions

2011年11月1日 星期二

tbxml - parse XML

http://istarelworkshop.com/2011/06/17/using_the_tbxml_library


http://stackoverflow.com/questions/5406424/iphone-tbxml-looping-and-parsing-data


http://ntt.cc/2010/09/05/50-open-source-iphone-apps-for-iphone-developers.html

NSString Object C 中常用的類。在這裡,在網路上搜集整理一些關於 NSString 的操作供參考:
  • 添加 '' 在字串前變成 NSString
NSString \*t = @"test"
  • 連接

字串連接有三種方法:

NSString *string1; NSString\* string2;

1. NString *compose = [NSString initWithFormat:@"%@,%@", string1, string2 ];

2. NString *compose = [string1 stringByAppendingString:string2];

3 . NString *compose = [string stringByAppendingFormat:@"%@,%@",string1, string2];

其中 format 的格式為:

'%@' 是格式化 NSString 類型

%d, %D, %i 是格式化 32位元有符號整數 (int)

具體見參考手冊
  • Format (initWithFormat & stringWithFormat)

NSString *string = [[NSString alloc] initWithFormat:@"%@", otherString];

label.text = string;

[string release];  //使用alloc不要忘記release!

myStr = [NSString stringWithFormat:@"%@", otherStr2];
  • 轉換(從別的型態轉至NSString)
int NSString: [NSString stringWithFormat:@"%d", myInt];

NSInteger NSString: [NSString stringWithFormat:@"%d", [myNSInt intValue]];


  • 比對(兩個字串比對)

if ([textField.text isEqualToString: @""]) {
        textField.text = @"0";
    }

不是用 textField.text! == @"";  來比對喔!  complier會過,但執行不理你!







不同button給不同的tag, 可呼叫同一個action。

myBtn1.tag = 1
[myBtn addTarget...];

myBtn2.tag = 2
[myBtn2 addTarget...];

- (void)clickTest:(id)sender
{
     UIButton* btn = sender;
     switch(btn.tag)
     {
          case 1:
               //
               break;
          case 2:
              //
             break;
     }
}