2016-11-30 37 views
1

有誰知道如何使用C++中的wxStyledTextCtrl獲取智能縮進?wxStyledTextCtrl(Scintilla)中的縮進和智能縮進

我一直在試圖對下列各種變化沒有明顯的成功:

_textEd->SetProperty(wxT("indentation.smartindenttype"), wxT("indentation:simple")); 
_textEd->SetProperty(wxT("indentation.indentwidth"), wxT("4")); 
_textEd->SetProperty(wxT("indentation.tabwidth"), wxT("4")); 
_textEd->SetProperty("spell.mistake.indicator", "style:squigglelow"); 

注:Indentation and smart indent in ScintillaNET涵蓋這個問題的.NET。

+0

做stc樣品適合你嗎?你是什​​麼版本和OS /工具包? – Igor

回答

1

SetProperty方法用於爲詞法分析器添加其他設置。它通常用於與代碼摺疊相關的設置。它不用於爲控件本身設置屬性。要設置wxStyledTextCtrl的屬性,您可能需要使用standard methods。例如,我猜線:

_textEd->SetProperty(wxT("indentation.indentwidth"), wxT("4")); 
_textEd->SetProperty(wxT("indentation.tabwidth"), wxT("4")); 

很可能是這樣的:

_textEd->SetIndent(4); 
_textEd->SetTabWidth(4); 

對於「_textEd->的SetProperty(維先通( 「indentation.smartindenttype」),維先通(「縮進:簡單「));',我不知道smartindenttype是什麼。這可能是一個添加到scintilla.net的擴展?如果您可以描述.net中的設置,我可以通過其他方法調用幫助完成同樣的事情。同樣,我不認爲這行'_textEd-> SetProperty(「spell.mistake.indicator」,「style:squigglelow」);'有任何與wxStyledTextCtrl模擬。所包括的詞法分析器都沒有拼寫檢查器。