さて、次のことを行う Linux (Gnome を使用した Ubuntu など) 用の単純な C アプリを作成したいと思います。
- ウィンドウを開く
- 現在のループ番号など、メイン ループを使用してそのウィンドウに何かを描画します。コントロールを使いたくないが、ウィンドウの表面に直接描画したい
- ウィンドウとアプリを閉じる
Windows ではそれを行うことができますが、Linux でそれを行う方法がわかりません。
ありがとう!
さて、次のことを行う Linux (Gnome を使用した Ubuntu など) 用の単純な C アプリを作成したいと思います。
Windows ではそれを行うことができますが、Linux でそれを行う方法がわかりません。
ありがとう!
X11 プログラミングには、さまざまな「Hello World」の例があります。
GTK+ の使用: http://library.gnome.org/devel/gtk-tutorial/2.13/c39.html
Qt の使用: http://doc.qt.nokia.com/latest/tutorials-widgets-toplevel.html
wxWidgets の使用: http://www.wxwidgets.org/docs/tutorials/hello.htm
より多くのツールキットがあります: Fox、FLTK、Tk、EFL ...
これまでのところ、これらはすべてクロスプラットフォームなので、X11 固有の例を見てみましょう。
これは Xlib を使用しています: http://en.literateprograms.org/Special:Downloadcode/Hello_World_(C,_Xlib)
これは Xcb を使用しています: http://xcb.freedesktop.org/tutorial/basicwindowsanddrawing/
何かを描きたいだけなら、OpenGL と GLUT を使用してみませんか。後者は、OpenGL コンテキストでウィンドウを作成する簡単な方法を提供します。
GLUT アプリケーションのセットアップは非常に簡単で、Lighthouse3d.comなどの多くのチュートリアルが公開されています。このチュートリアルは Visual Studio で動作しますが、これを Linux でのアプリケーションのコンパイルに翻訳するのは難しくありません。
または、 Qtを使用することもできます。これは、より高度で使いやすい GUI ツールキットであり、必ずしも OpenGL コードを記述する必要はありません。
ウィンドウに直接描画したい場合は、X11を検討しましたか?
GTKやQtのようなツールキットを使用するほど良くはありませんが、ウィンドウシステムで取得できるレベルとほぼ同じです。
私はストレートX11のプログラミングの経験がないので、出発材料をお勧めすることはできません。
Windows での GUI アプリの作成に慣れている場合は、.net などで作成したことがあると思います。簡単な移行は、モノを使用することです。クロスプラットフォームの .NET 開発プラットフォーム - http://mono-project.com/Main_Page
使用するさまざまな GUI ツールキットもあります: http://www.mono-project.com/Gui_Toolkits