liteide x25已發(fā)布,界面簡潔一些,支持Go1.4。
因為要編譯打包和上傳四個操作系統(tǒng)版本,所以二進制版本的發(fā)布周期比較長。
相對而言,github上的源碼版本相對比較新,BUG也會及時修復(fù)。
VFC只提供了對VS2010 VCExpress的支持
re: VS2010英文正式版官方下載[未登錄] visualfc 2010-04-14 20:00
WTL的最新svn已經(jīng)可以支持VS2010和VS2010Express版本了。
cppsupport-1.3.1-win32-plugin.zip是使用VC8Express編譯的。
如果自行編譯QTC和CppSupport,MINGW和VC8都可以。
re: GUI框架:談?wù)効蚣埽瑢憣懘a visualfc 2009-11-17 21:42
@OwnWaterloo
:-)
QT的cplusplus寫的要比CB的好。
re: GUI框架:談?wù)効蚣埽瑢憣懘a visualfc 2009-11-17 21:23
CPlusPlus是Qt Creator中用于分析C++源文件的核心庫
代碼位于 Qt Creator源碼的 src/libs/cplusplus/目錄下
其中 C++ 語法分析/錯誤檢查部分使用標(biāo)準C++庫完成,不使用QT庫。
我也是剛開始看。
對于CodeBlocks的C++源碼分析可以參看下面的wiki。
http://wiki.codeblocks.org/index.php?title=Code_Completion_Design
re: GUI框架:談?wù)効蚣埽瑢憣懘a visualfc 2009-11-17 18:04
c++源碼分析,可以利用ctags,源代碼可以看一下ctags,CodeBlocks的codecompletion,Qt Creator的cplusplus。
@forestlin
在CodeBlocks中codecompletion就是代碼分析和自動完成插件。
@codespy
是這樣的,本質(zhì)上一樣,只是不同的實現(xiàn)方式而已。
可能的話加我gmail。visualfc at gmail.com
兩張圖片看不到是因為原來文件名為phone..png,結(jié)果編輯時不認,又重傳的phone.png。現(xiàn)已修正。
@codespy
我的表達可能不太準確,“這個布局控制與QT和WX有所不同,其子窗口由父窗口管理,。。。” 這段話指的是在WX和QT中使用的是 Lyaout->addWidget(child)的形式,而在此布局中則由 new child(parent)的方式來指定。
為了試驗布局是否準確,此例中的鍵盤布局使用的也是hbox和vbox的組合。即將鍵盤grid看成是一個vbox和四個hbox組合。
如果詳細講,恐怕不只一篇文章能講得完,在這里僅簡單介紹一下實現(xiàn)原理。
圖中的布局僅使用boxlayout來完成,如果配合space可以完成更多控制。
這個布局控制與QT和WX有所不同,其子窗口由父窗口管理,layout僅具備算法功能,因此理論上可以對窗口任意切換layout。
//代碼原理如下
class xwnd
{
xwnd* first;xwnd* last;xwnd* prev;xwnd*next;
xlayout* layout;
//調(diào)用排版功能
void layout()
{
if (_layout)
_layout->layout(this);
for (xwindow* child = _first; child; child = child->_next)
{
child->layout();
}
}
};
class xwindow : xwnd;
class xframe : xwindow;
class xspace : xwindow;不生成實際的窗口,只是一個占位。
//示例如下:
xframe* frame = new xframe(_T("TEST")); //框架
frame->set_layout(xboxlayout(true));//設(shè)置HORZ_BOX
new xedit(frame,LAYOUT_FILL,xsize(100,100)); //左面的EDIT窗口
xwindow* right = new xwindow(frame); //右面的窗口做為容器
right->setlayout(xboxlayout(false)); //設(shè)置VERT_BOX
new xspace(right,LAYOUT_FILL_Y); //促使OK和CANCEL按鈕置于最下
new xbutton(right,_T("OK"));
new xbutton(right,_T("Cancel"));
frame->create(); //最后生成框架窗口并顯示
是的,VFC的WTL應(yīng)用程序向?qū)Р恢С諩VC。可以使用WTL7.1提供的evc4向?qū)浜蟅FC的EVC插件來支持EVC上WTL應(yīng)用程序開發(fā)。
多謝分享,下載學(xué)習(xí)中。。。
不過代碼風(fēng)格不太喜歡,如VL_WinControl,不夠簡潔。
@OwnWaterloo
謝謝。
我使用 setlocale( LC_ALL, "chs")和mbstowcs(...) 替代MultiByteToWideChar 非常好用。
FXString會自動將wchar_t轉(zhuǎn)換為內(nèi)部的utf8。而FOX TOOLKIT在Windows下顯示的時候在內(nèi)部會將utf8再轉(zhuǎn)換成utf16進行顯示。
@OwnWaterloo
能否說的具體一些,我只找到使用iconv的例子。
FOX的FXString保存的是UTF8編碼,實際需要的是GBK-UTF8的轉(zhuǎn)換。
@clay
VisualFC的AppWizard是獨立應(yīng)用程序,不依賴于具體VS環(huán)境,這樣才可以適用于多個VS平臺。
VisualFC項目歡迎一切愛好者的加入。
VisualFC本身實現(xiàn)了Code分析的支持,而VC的Addin只是實現(xiàn)項目和文件的讀寫功能,對于Code::Blocks的支持跟VC下插件開發(fā)的原理都是一樣的。
比較容易的一個方式是使用VisualFC附帶的AppWizard建立一個WTL新項目,應(yīng)用程序類型選擇Dialog Bases,選擇Frame Dialog擴展類型,同時將check it add vfc files to project選擇上,在自定義UI頁面上可以允許使用Toolbar、ReBar、Command Bar和Status Bar。確認后即可建立一個支持工具欄和狀態(tài)欄的對話框應(yīng)用程序。
第二種方式是參考上面VisualFC向?qū)Мa(chǎn)生的擴展對話框應(yīng)用程序,來改寫現(xiàn)有的對話框項目,向?qū)Мa(chǎn)生的擴展對話框程序中使用了我編寫的一個vfcframe.h文件,該文件已經(jīng)包含在VisualFC的發(fā)行包中。
@free2000fly
WTL項目好久沒見更新了,建議你可以單獨發(fā)布修改后的文件。
@free2000fly
我不是WTL項目組成員。
這個項目是WTL的可視化開發(fā)插件,獨立于WTL。
@ flyingxu
WTLAppWizard是WTL的應(yīng)用程序向?qū)Вㄟ^它可以以向?qū)У姆绞缴蒞TL應(yīng)用程序。VisualFC中也包括了一個用WTL寫的AppWizard。區(qū)別是前者是用LUA寫的,有中英文兩種界面以方便使用。
WTL Addin 是VS的插件,提供了WTL的設(shè)計開發(fā)支持。
關(guān)于開發(fā):
VisualFC 0.80.0610為核心版本,在此基礎(chǔ)上擴展VisualFC應(yīng)用范圍。
目前已完成的包括 VisualFC for EVC。
目前正在開發(fā)的有 WTLAppWizard。
即將開發(fā)的是VisualFC for VSExpress版本。
如果對于VisualFC的功能有什么意見和建議請留言。
@wtl WTLAppWizard2_rc1.zip 是WTL應(yīng)用程序向?qū)?
WTLAppWizard2_rc1_src.zip 是一樣的,但是包含了源文件的。
以外置工具的方式調(diào)用,更改代碼后需要在VSExpress中確認文件的更改,相比VS中要不便一些。
@LOGOS
個人比較喜歡iup的界面設(shè)計方式。wxLua通過
dialog:Connect(ID_BROWSE, wx.wxEVT_COMMAND_BUTTON_CLICKED, OnBrowse)的Bind方式來實現(xiàn),iup的方式相對更加lua化一些。:)
Lua真是不錯呀,最近在用Lua重寫VisualFC的WTL向?qū)В罱K選定了iup來完成。
一直用WTL,習(xí)慣于使用unicode了。如果在lua中大量使用 unicode,這種方式還是比較費事,看來只能增加一個類似luaL_loadfile的函數(shù)來支持了。
初學(xué)LUA,畢竟使用\ddd這種方式比改lua的源碼的方式要簡單多了。
謝謝提醒.
看來為了線程安全, 可能得將type_id_t<T>::name()接口改為type_id_t<T>().name()了.
WTL的應(yīng)用程序向?qū)Р恢С諻indow Mobile。但VisualFC這個WTL開發(fā)工具支持EVC和VS2005/VS2008上Window Mobile的開發(fā)。
『我用過時間不短的WTL,關(guān)鍵在于這東西沒有設(shè)計器』指的是什么?VisualFC這個VS的WTL設(shè)計插件提供了VS60/2003/2005/2008下的WTL類向?qū)?應(yīng)用程序程序向?qū)В惔a生成向?qū)В琖TL類向?qū)Чδ芟喈?dāng)于VS60的MFC Class Wizard,包括Message,Notify,Command,DialogResize,DDX/DDV,UpdateUI,DialogFont的完全支持。另外如果不考慮VS60,也可以選擇WTLHelper。