全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:2500
推到 Plurk!
推到 Facebook!

常用字串輸入程式

 
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-09-05 16:25:48 IP:140.113.xxx.xxx 未訂閱
[名稱] : 常用字串小程式 (476 KB)
[版本] : v1.2
[網址] : http://www.csie.nctu.edu.tw/~chtai/software/Quick_String.zip
[功能]
        快速幫你輸入常用字串,表情,符號。
        用在 MSN 或是 WORD 或留言板時應該挺方便的。
        若要修改字串,只要去修改 FUS.ini 檔即可。
[用法]
        1. 解壓縮至任何你喜歡的地方,執行本程式。
        2. 在要輸入文字的地方點一下,讓它取得焦點。
           (例如你在正用 MSN 傳訊,就在下方的打字區域點一下。)
        3. 選擇一個你想送出的字串,對它點兩下。
        4. 這時應該會看到你選擇的字串已送到目的地了。
[已知問題]
        只能用在可打字的元件上 (就是有支游標在閃的地方),
        也就是 edit, memo, richedit, combobox, listbox 之類,
        無法用在 PCMan 或 KKMan 之類的軟體。
[ToDo] : 解決已知問題  ~XD
[版本歷史]
v1.2 :
        修正切換類別之後會掉字的bug.
        移除 "新增字串" 的功能, 要新增/修改字串或類別, 請直接去 FUS.ini 改.
        減少一點點程式體積.
v1.1 :
        讓程式在不同解析度的螢幕都能出現在右下角.
        改變一些程式外觀.
        減少程式體積.
v1.0 :
        First released! 
-- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-09-05 16:49:47 IP:140.113.xxx.xxx 未訂閱
網址的檔案是只有執行檔的連結,包含原始碼的完整檔案已上傳到站上,有興趣的朋友請由最上方的檔案連結下載 :)    會興起寫這程式的動機是因為小弟有在使用PCMan上BBS,覺得裡頭的常用字串功能非常方便,可惜只能用在該軟體上,所以就參考了該作者的另一支程式(標點符號輸入)的介面,再加上小弟自行收集的常用字串,而寫了這一支小程式。    主要的設計方向就是 1.利用INI檔Section的便利性來儲存不同分類的常用字串。 2.利用INI檔Key=Value的特性來避免存入重複字串。(考慮到增/改字串並不常用,故目前拿掉此功能) 3.利用WIN API找尋並傳送訊息至另一視窗。    以下這段就是送出字串到目的視窗的程式碼:
void __fastcall TformMain::ListBox1DblClick(TObject *Sender)
{
    HWND HWnd = formMain->Handle;
    TClipboard* Clip = Clipboard();
    Clip->AsText = ListBox1->Items->Strings[ListBox1->ItemIndex];        do
    {
        if( !(HWnd = GetWindow(HWnd, GW_HWNDNEXT)) )
            break;
    } while( !(GetWindowLong(HWnd, GWL_STYLE) & WS_BORDER) || !IsWindowVisible(HWnd) ||
             HWnd == ListBox1->Handle || HWnd == cbClass->Handle );        if( IsZoomed(HWnd) )
        ShowWindow(HWnd, SW_SHOWMAXIMIZED); // 若是最大化, 就最大化顯示
    else
        ShowWindow(HWnd, SW_SHOW);          // 不然就直接顯示
    SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, 0, SPIF_SENDCHANGE);
    SetForegroundWindow(HWnd);        keybd_event(VK_CONTROL, 0, 0, 0);               // 按下 Ctrl
    keybd_event(86, 0, 0, 0);                       // 按下 V
    keybd_event(86, 0, KEYEVENTF_KEYUP, 0);         // 放開 V
    keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); // 放開 Ctrl
}
可是目前小弟遇到兩個難題 - 有時候在多個視窗之間來去切換之後,會發生找錯目的視窗,或是把自己當成目的視窗的問題。 目前想到的可能解法是再加入ProcessID的判斷,若ProcessID是自己就再找下一個視窗。 - 送字串出去的方式,目前是先存入剪貼簿,再送出Ctrl V貼上。 可是有些軟體,如KKMan或PCMan,並非用Ctrl V當做貼上的熱鍵, 而且有些軟體,如telnet之類,根本沒有edit或memo之類的元件,也就根本不能使用Ctrl V貼上的方式了。 以上兩個問題,還望眾位前輩能代為解惑。 或是對本程式的程式碼有所建議或疑問的,也煩請反應給小弟知道 :) -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-09-05 17:06:10 IP:61.221.xxx.xxx 未訂閱
引言: 而且有些軟體,如telnet之類,根本沒有edit或memo之類的元件,也就根本不能使用Ctrl V貼上的方式了
那就先判斷程式執行緒先分類 再請利用 滑鼠 右鍵 參數 類似使用ssh時 這樣 貼上
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-09-05 21:18:11 IP:140.113.xxx.xxx 未訂閱
引言:
引言: 而且有些軟體,如telnet之類,根本沒有edit或memo之類的元件,也就根本不能使用Ctrl V貼上的方式了
那就先判斷程式執行緒先分類 再請利用 滑鼠 右鍵 參數 類似使用ssh時 這樣 貼上
不好意思,不過我不太懂您的意思耶。 軟體有那麼多種,又怎有辦法去分類哪一種要用什麼方法貼上呢? 小弟猜想,應該還有更通用的方法,能夠 "傳送文字給別支程式,並讓它秀出來"才是吧。 -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-09-05 22:26:13 IP:61.64.xxx.xxx 未訂閱
在2000下 使用cmd.exe 當原本的 Ctrl c 就是復製的來源字串資料 在telnet下使滑鼠右鍵就如Ctrl V 一般了 但這樣的方式 如果在msn上可能就變成 Enter 所以可能要先行判斷 該程式的 執行緒 在如法泡製
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-09-06 11:58:00 IP:140.113.xxx.xxx 未訂閱
可是軟體那麼多種,各軟體貼上的方式亦不同, 誰又能知道使用者會用哪一種軟體。 小弟想知道,是否有別種方式(不一定要用複製貼上), 告訴軟體要在編輯的焦點秀出一段文字。 -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-09-06 16:46:28 IP:61.221.xxx.xxx 未訂閱
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=51329 下方的資料看看 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=50997 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=47170 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=53717 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=53688 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=53687 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=43833 當使用某程式時 啟用快速鍵呼叫 輸入程式 此動態鎖定ap執行緒 在來就是API Hook的應用
ENIX007
高階會員


發表:28
回覆:274
積分:185
註冊:2003-11-27

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-09-07 15:24:53 IP:203.70.xxx.xxx 未訂閱
chtai您好 報告測試結果... 小弟使用了MSN6.1(6.1.0211)、記事本、IE6.0(6.0.2800.1106)也就是在回應您 的這篇 操作過程: > 我的環境是 > 程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~
------
程式迷人之處,在於邏輯思考,然而卻也是惱人之處~~
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-09-07 15:54:14 IP:140.113.xxx.xxx 未訂閱
感謝ENIX007兄的回應 :p 其實有時候我自己也會遇到這問題, 只要用滑鼠在編輯區再點一下,應該就能解決了。 若還是不行,在這兩支程式之間來回切換一下應該就可以了。 還是不行?  拍謝,我真的想不到為什麼了 Q_________Q    究其原因,應該是我以下程式碼的問題 
    HWND HWnd = formMain->Handle;
    do
    {
        if( !(HWnd = GetWindow(HWnd, GW_HWNDNEXT)) )
            break;
    } while( !(GetWindowLong(HWnd, GWL_STYLE) & WS_BORDER) || !IsWindowVisible(HWnd) ||
             HWnd == ListBox1->Handle || HWnd == cbClass->Handle );        if( IsZoomed(HWnd) )
        ShowWindow(HWnd, SW_SHOWMAXIMIZED); // 若是最大化, 就最大化顯示
    else
        ShowWindow(HWnd, SW_SHOW);          // 不然就直接顯示
    SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, 0, SPIF_SENDCHANGE);
    SetForegroundWindow(HWnd);
 
這段程式碼是根據Z-order找出我的下一個視窗,若它是有邊界且可見的, 就帶到前面。 可是這在一些情況下會失敗, 例如我在自己這支程式的視窗點一下,再去雙擊字串,似乎就會送到自己了:p 例如我準備要送出時,剛好有些別的程式的pop-up跑出來,也會失敗。 例如ENIX007兄所提及的問題 :p 雖然這些問題,理論上,只要再切回目的視窗的編輯區再來雙擊字串,應該就解決了,可是這使得程式有點不好用,卻是不爭的事實 Q_Q 很可惜小弟是初次接觸跟windows相關的API,實在是力有未逮, 真的很誠心的希望各位站上的前輩同好們, 能對於上面那段找視窗判斷視窗的程式碼,或是這支程式的其他程式碼, 給與小弟一些幫助與意見。 當然小弟也有拜讀之前 conundrum 前輩提供的相關link,以及站上其他的文章,只是還在試著吸收,還在摸索當中哩 ~~:) -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :) 發表人 - chtai 於 2004/09/07 16:12:00
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#10 引用回覆 回覆 發表時間:2004-09-07 22:22:37 IP:61.64.xxx.xxx 未訂閱
http://delphi.ktop.com.tw/topic.php?topic_id=27086 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=34934 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=48943 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=47135 http://delphi.ktop.com.tw/topic.php?topic_id=43481 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=48753 http://delphi.ktop.com.tw/topic.php?topic_id=29551 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=31987 http://delphi.ktop.com.tw/topic.php?TOPIC_ID=33312 http://delphi.ktop.com.tw/topic.php?method=AddScore14&topic_id=29172&ToMemberID=761 http://delphi.ktop.com.tw/topic.php?method=AddScore14&topic_id=19726&ToMemberID=2561    chtai 兄  你好 庵沒那摸老把      
引言: 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。
我尬意 自由軟體 發表人 - conundrum 於 2004/09/07 23:05:12
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#11 引用回覆 回覆 發表時間:2004-09-08 06:00:33 IP:211.76.xxx.xxx 未訂閱
chtai你好:     我看到了之前幫你解答問題的程式...很可惜我提供的碼在這裡作用不良。看過你的源碼後,我把程式做了一些修改來解決這個問題,碼就 class="code"> //--------------------------------------------------------------------------- #ifndef Unit1H #define Unit1H //--------------------------------------------------------------------------- #include #include #include #include #include #include #include #include #include //--------------------------------------------------------------------------- class TformMain : public TForm { __published: // IDE-managed Components TMainMenu *MainMenu1; TComboBox *cbClass; TStatusBar *StatusBar1; TMenuItem *mmAuthor; TListBox *ListBox1; TApplicationEvents *ApplicationEvents1; void __fastcall FormCreate(TObject *Sender); void __fastcall cbClassChange(TObject *Sender); void __fastcall ListBox1DblClick(TObject *Sender); void __fastcall mmAuthorClick(TObject *Sender); void __fastcall ApplicationEvents1Idle(TObject *Sender, bool &Done); private: // User declarations HWND LastEditHandle; public: // User declarations std::auto_ptr iniString; std::auto_ptr sl; __fastcall TformMain(TComponent* Owner); }; //--------------------------------------------------------------------------- extern PACKAGE TformMain *formMain; //--------------------------------------------------------------------------- #endif //--------------------------------------------------------------------------- #include #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TformMain *formMain; //--------------------------------------------------------------------------- __fastcall TformMain::TformMain(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TformMain::FormCreate(TObject *Sender) { if( !FileExists(ExtractFilePath(Application->ExeName) "FUS.ini") ) ShowMessage("字串檔 FUS.ini 找不到!"),Close(); sl.reset(new TStringList); iniString.reset(new TIniFile( ExtractFilePath(Application->ExeName) "FUS.ini" )); iniString->ReadSections(cbClass->Items); cbClass->ItemIndex = 0; cbClassChange(0); formMain->Left = Screen->Width - formMain->Width - 20; formMain->Top = Screen->Height - formMain->Height - 20; } //--------------------------------------------------------------------------- void __fastcall TformMain::mmAuthorClick(TObject *Sender) { ShellExecute(NULL, NULL, "http://www.csie.nctu.edu.tw/~chtai/", NULL, NULL, SW_SHOW); } //--------------------------------------------------------------------------- void __fastcall TformMain::cbClassChange(TObject *Sender) { iniString->ReadSectionValues(cbClass->Text, sl.get()); // 把結尾的 = 去掉, 因為有些表情含有 = , 所以不能用 ReadSection for( int i = 0; i < sl->Count; i ) sl->Strings[i] = sl->Strings[i].SubString(0, sl->Strings[i].Length()-1); ListBox1->Items = sl.get(); } //--------------------------------------------------------------------------- void __fastcall TformMain::ListBox1DblClick(TObject *Sender) { if(!IsWindow(LastEditHandle)) return; if( IsZoomed(LastEditHandle) ) ShowWindow(LastEditHandle, SW_SHOWMAXIMIZED); // 若是最大化, 就最大化顯示 else ShowWindow(LastEditHandle, SW_SHOW); // 不然就直接顯示 SystemParametersInfo(SPI_SETFOREGROUNDLOCKTIMEOUT, 0, 0, SPIF_SENDCHANGE); SetForegroundWindow(LastEditHandle); Clipboard()->AsText = ListBox1->Items->Strings[ListBox1->ItemIndex]; keybd_event(VK_CONTROL, 0, 0, 0); // 按下 Ctrl keybd_event(86, 0, 0, 0); // 按下 V keybd_event(86, 0, KEYEVENTF_KEYUP, 0); // 放開 V keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); // 放開 Ctrl } //--------------------------------------------------------------------------- void __fastcall TformMain::ApplicationEvents1Idle(TObject *Sender, bool &Done) { HWND ForWindow = ::GetForegroundWindow(); if(ForWindow != Handle) { LastEditHandle = ForWindow; char str[255]; SendMessage(LastEditHandle, WM_GETTEXT, 255, (long)str); Caption = AnsiString("傳送至") str; } } //---------------------------------------------------------------------------
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#12 引用回覆 回覆 發表時間:2004-09-08 06:26:07 IP:211.76.xxx.xxx 未訂閱
忘了一小段碼, 如果要適用於PCMan,上面的程式在key_event那邊換成  
    if(Caption.AnsiPos("PCMan"))
        {
        keybd_event(VK_MENU, 0, 0, 0);               // 按下 Alt
        keybd_event(80, 0, 0, 0);                       // 按下 P
        keybd_event(80, 0, KEYEVENTF_KEYUP, 0);         // 放開 P
        keybd_event(VK_MENU, 0, KEYEVENTF_KEYUP, 0); // 放開 Alt
        }
    else
        {
        keybd_event(VK_CONTROL, 0, 0, 0);               // 按下 Ctrl
        keybd_event(86, 0, 0, 0);                       // 按下 V
        keybd_event(86, 0, KEYEVENTF_KEYUP, 0);         // 放開 V
        keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0); // 放開 Ctrl
        }
話說回來,這真是個好用的程式~~ (如果加上新增文字的使用者介面就更棒了,這樣就可以隨時加入新的文字)
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#13 引用回覆 回覆 發表時間:2004-09-08 10:15:37 IP:140.113.xxx.xxx 未訂閱
引言: 話說回來,這真是個好用的程式~~ (如果加上新增文字的使用者介面就更棒了,這樣就可以隨時加入新的文字) < face="Verdana, Arial, Helvetica"> 感謝pwipwi大哥的指教 :p 您提供的解法目前實驗結果是可行的。 有個問題請教如下:
public:                // User declarations
    std::auto_ptr iniString;
    std::auto_ptr sl;
為什麼這裡要用 std::auto_ptr<....> 呢? 有什麼特別用意或功能嗎? 其實新增文字的介面已經有了,只是之前小弟覺得用處似乎不大所以就拿掉了,source code裡的 Unit2 就是新增文字的介面了, 小弟採用您的code之後重新上傳的檔案已加上 新增字串 的功能了 :p -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :) 發表人 - chtai 於 2004/09/08 12:19:30
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
pwipwi
版主


發表:68
回覆:629
積分:349
註冊:2004-04-08

發送簡訊給我
#14 引用回覆 回覆 發表時間:2004-09-08 15:41:06 IP:211.76.xxx.xxx 未訂閱
不好意思,改了你的碼,其實你原來的碼已經可以正常運作了 < class="code"> std::auto_ptr iniString; std::auto_ptr sl; 上面的碼會讓iniString和sl在formMain被解構前,"保證"一定被解構 因此可以免去在OnFormClose裡delete的碼。 另外,OnFormClose不保證在程式關閉前一定會被執行到。一般建議是不用OnFormClose做delete物件的動作,而是用標準的解構子~formMain。有人問: 在程式前,有那種狀況是~formMain會被呼叫而OnFormClose不被呼叫嗎?... 這是有的(但我忘了是那個狀況...) 而我個人覺得最好的做法是直接在物件裡結合
chtai
高階會員


發表:68
回覆:238
積分:116
註冊:2004-05-21

發送簡訊給我
#15 引用回覆 回覆 發表時間:2004-09-10 15:05:25 IP:140.113.xxx.xxx 未訂閱
引言: 另外,OnFormClose不保證在程式關閉前一定會被執行到。一般建議是不用OnFormClose做delete物件的動作,而是用標準的解構子~formMain。有人問: 在程式前,有那種狀況是~formMain會被呼叫而OnFormClose不被呼叫嗎?... 這是有的(但我忘了是那個狀況...) 而我個人覺得最好的做法是直接在物件裡結合>< face="Verdana, Arial, Helvetica"> 感謝pwipwi大哥指教,這樣我又多學了一樣東西了,STL真是博大精深呢~ 另外又有個問題想請教您了,小弟根據您的程式如法炮製, 寫出了以下的code
    else if(Caption.LowerCase().AnsiPos("putty"))
    {
        keybd_event(VK_SHIFT, 0, 0, 0);
        keybd_event(VK_INSERT, 0, 0, 0);
        keybd_event(VK_INSERT, 0, KEYEVENTF_KEYUP, 0);
        keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0);
    }
原本我是希望用 PuTTY 或是 pputty 的人也可以使用, 所以我就送出 Shift Ins 鍵,這是它們貼上的熱鍵, 可是卻發現這樣做無法成功哩~ (我也試過用 mouse_event 送出右鍵,同樣失敗了) 不知您或是其他前輩是否知道有可能是為什麼呢 ? -- http://www.csie.nctu.edu.tw/~chtai/software.html 好用免費軟體的收集網頁,歡迎大家跟我分享或一同推廣免費軟體。 若您覺得這網頁不錯,也歡迎您將它傳出去 :)
------
My Web: http://nelson.csie.us
My Blog: http://blog.nelson.csie.us
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#16 引用回覆 回覆 發表時間:2004-09-10 16:32:48 IP:61.221.xxx.xxx 未訂閱
putty-src.zip Source Code http://www.tartarus.org/~simon/putty-snapshots/putty-src.zip 1 使用虛擬鍵 搭配 執行緒 還需注意 滑鼠焦點 請先參考 原程式 再搭配 插入字串
系統時間:2024-05-19 11:04:19
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!