作者ewn (...)
看板PCman
標題Re: [分享] PCMan CE 2009 Beta 1
時間Thu Dec 18 19:01:23 2008
那個漏一行的 bug 是因為 pcman 要截取下一頁的行時
會送出 VK_DOWN 往下捲動一行
但是在捲到某一行的時候,會一次跳兩行
所以導致有一行會被跳過
我想到一個方法,就是偵測是否跳了兩行
因為 ptt 在文章的最末行會有 「從 aa~bb 行」的字樣
因此利用 bb 每一次增加的間隔來偵測
當 bb 增加間隔為2時,就多截取前一行
實測:
我在 CTelnetConn 加上一個 static int
然後利用這個在 OnText() 裡那一段做行數的判斷
實際抓,就沒有漏一行了
我用的 pcman 原始碼是 trunk 裡的 lite 版本測試的
好像是沒有英漢翻譯的版本?
附上執行檔下載:
http://www.badongo.com/file/12545165
不想點的人,可以用以下原始碼重編:
CTelnetConn.h
http://rafb.net/p/R8ujq625.html
CTelnetConn.cpp
http://rafb.net/p/0XaiWe14.html
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.44.186.177
推 netio:用VK_DOWN似乎不夠快 用VK_SPACE是否可行呢? 12/18 23:06
推 jeta890119:用PAGE DOWN加上擷取行數字樣,或許會快很多 12/19 00:13
推 jeta890119:話說回來,可以直接匯出成HTML檔嗎? 12/19 00:15
推 HZYSoft:當初設計這樣是因為不同 BBS 其實這部份行為不同 12/19 01:01
→ HZYSoft:只有方向鍵向下都是捲動一行這點比較一致 12/19 01:01
推 jeta890119:其實可以把不同的作法放在一起,讓USER自己選擇 12/19 01:14
推 ceshine:trunk裡的lite版本應該是有英漢翻譯功能的 12/19 09:01
→ ceshine:因為我就是從那裏抓來BBCall的程式碼XD 12/19 09:01
推 ceshine:提供不同作法讓使用者選擇這個主意不錯,可以試試~ 12/19 09:06
→ ewn:可能是因為我用vs2008的關係吧 12/19 12:39