2011-06-07 79 views
8

問候最簡單的方法來製作一個簡單的GUI窗體窗體應用程序

我想製作一個非常簡單的GUI窗口應用程序。 我應該只包含一些文本框並進行一些計算並將結果輸出到另一個文本框中。

我不想使用.Net,因爲它實際上是一個整個虛擬機,它必須安裝在最終用戶PC上等等。我希望數據量任何用戶使用任何Windows用戶(最好甚至是2000或nt)必須下載才能使用我的應用程序MINIMAL。

我的意思是,在.Net出現之前,有很簡單的方法可以讓GUI應用程序出現?所有這些裂縫和keygens在我的硬盤上佔用千字節,並且不使用任何.net或其他東西?

我記得有一種叫做MFC的東西,甚至在幾年前當98/NT是操作系統時,Windows gdi曾經談到過,作爲開發GUI應用程序的一種方式。那是我需要的嗎?

我沒有問題使用微軟的Visual Studio或任何開發環境,我只是不想要一個程序,執行一個簡單的數學函數,需要數百千字節的無用空間,並要求用戶安裝兆字節的「框架」的東西。

+0

可能重複[在Windows上編寫輕量級GUI程序的最快路徑是什麼?](http://stackoverflow.com/questions/272764/what-is-the-quickest-path-to-writing-a -lightweight-gui-windows-program) – 2011-06-07 10:57:03

+0

如果您正在尋找Devopment環境的鏈接,請查看堆棧溢出的Windows標記信息頁面。 – 2011-06-09 11:35:40

回答

1

您可以使用WinAPI的和C或C++

這裏是一個example。文字是土耳其語,但它不多說,它只是一個顯示窗口的基本程序。

+0

謝謝,我將檢查鏈接 – Istrebitel 2011-06-07 15:13:01

3

如果你想要的是簡單的,並且不希望VisualThis或FrameworkThat,選擇一種腳本語言,像Tcl,Python等。例如,Tcl和tk工具包使得創建簡單的基於表單的應用程序非常容易。小的tcl/tk程序只有一兩兆字節。如果你喜歡Python,你可以使用tk,wxPython或者qt。關於TCL

的一個好處是,它有一個技術,是第二個無包裝爲您的應用程序,它的所有數據,運行時引擎到一個文件中。這些被稱爲tclkits,starkits和starpack,後者既是整個語言加上一個文件中的應用程序。如果你願意,可以將你的應用分成兩個文件 - 一個稱爲tclkit的特定於平臺的運行時(windows,mac等)和一個稱爲starkit的跨平臺單個文件虛擬文件系統。這使得在所有主要平臺上運行你的程序變得微不足道,只需很少的額外工作。

+2

我不討厭Visual Studio或.Net。我只是不希望我的可執行文件佔用過多空間,並且需要將框架或安裝到系統中的東西運行起來。對於一個簡單的數學函數的程序來說,這只是荒謬的。對於一些小遊戲迷來說,這只是一個小工具,可以加速他們的遊戲體驗。它應該在一秒鐘內完成,並在任何普通的Windows PC上運行,而無需任何額外的安裝或東西。那就是目標。另一個目標是更多地瞭解我還不知道的事情。知識就是力量:) – Istrebitel 2011-06-07 15:16:20

6

最簡單的(最低金額庫)創建一個簡單的Windows窗體應用程序的方式是:

  • 用資源編輯器奠定了其上具有必要的字段作爲一個.RC一個簡單的對話框文件

然後,下面的.cpp文件將加載該對話框並顯示它。

#include <windows.h> 
#include "resource.h" // this file should be created with the .rc file 

// If you are building with MSVC 8 or later, this will ensure that the dialog looks 
// pretty, rather than flat and grey. 
#pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' 
version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"") 

INT_PTR MyDialogProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ 
    switch(uMsg){ 
    case WM_INITDIALOG: 
    return TRUE; 
    } 
    return FALSE; 
} 

INT WINAPI WinMain(HINSTANCE hInstance,HINSTANCE, LPCTSTR, INT){ 
    return DialogBoxParam(hInstance,MAKEINTRESOURCE(IDD_DIALOG1),NULL,MyDialogProc,0L); 
} 

(假設IDD_DIALOG1是您的.rc文件中對話框資源的ID)。


只需這段代碼,你應該有一個對話框,在屏幕上 - 所有你需要做的就是填寫MyDialogProc與處理像WM_COMMAND將被稱爲消息是響應用戶的交互。 WM_INITDIALOG是您應該添加代碼以預先填充控件的位置。可以使用SetDlgItemText來設置各種控件上的文本。


如果您使用Microsoft Visual C++ Express或大多數其他非MS開發環境,則不包括資源編輯器/對話框編輯器。 ResEdit在這種情況下我可以免費下載。使用Microsoft Visual C++,可以使用Add-New-Item菜單選項創建.rc文件。

+0

呃,我該如何創建資源文件? – Istrebitel 2011-06-07 15:13:44

+0

查看回復。這取決於你使用的是什麼環境。 – 2011-06-07 15:32:29

2

如果您偏​​好MS工具,那麼您唯一的選擇是Visual Studio和C++。您可以直接編寫Win32 API而無需任何框架,但使用像MFC這樣的框架可以讓生活更輕鬆。

如果您準備採取更廣泛的觀點,那麼您應該考慮Delphi帶有框架的VCL,它非常強大且易於使用。 VCL與WinForms非常相似,事實上WinForms顯然受到了VCL的啓發。 Delphi VCL應用程序可以在目標機器上安裝而無需安裝運行時間。

+1

我在Delphi中作爲一個孩子開始了我的編程實驗。如果我記得正確的話,那麼該程序至少需要500kb,因爲這個VCL包含在可執行文件中。 – Istrebitel 2011-06-07 15:12:44

1

我發現的最佳答案是一款名爲「RealStudio」的軟件。這是一個簡單的應用程序,可以啓動相當不錯的.exe,相當小。最嚴肅的開發人員不喜歡它,因爲它不是完全免費的 - 但它的支持非常好,並且有很多功能。

相關問題