3

さて、次のことを行う Linux (Gnome を使用した Ubuntu など) 用の単純な C アプリを作成したいと思います。

  1. ウィンドウを開く
  2. 現在のループ番号など、メイン ループを使用してそのウィンドウに何かを描画します。コントロールを使いたくないが、ウィンドウの表面に直接描画したい
  3. ウィンドウとアプリを閉じる

Windows ではそれを行うことができますが、Linux でそれを行う方法がわかりません。

ありがとう!

4

6 に答える 6

3

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/

于 2011-03-07T13:47:47.550 に答える
2

何かを描きたいだけなら、OpenGL と GLUT を使用してみませんか。後者は、OpenGL コンテキストでウィンドウを作成する簡単な方法を提供します。

GLUT アプリケーションのセットアップは非常に簡単で、Lighthouse3d.comなどの多くのチュートリアルが公開されています。このチュートリアルは Visual Studio で動作しますが、これを Linux でのアプリケーションのコンパイルに翻訳するのは難しくありません。

または、 Qtを使用することもできます。これは、より高度で使いやすい GUI ツールキットであり、必ずしも OpenGL コードを記述する必要はありません。

于 2011-03-07T13:26:51.777 に答える
1

ウィンドウに直接描画したい場合は、X11を検討しましたか?
GTKやQtのようなツールキットを使用するほど良くはありませんが、ウィンドウシステムで取得できるレベルとほぼ同じです。

私はストレートX11のプログラミングの経験がないので、出発材料をお勧めすることはできません。

于 2011-03-07T13:35:04.170 に答える
1

Windows での GUI アプリの作成に慣れている場合は、.net などで作成したことがあると思います。簡単な移行は、モノを使用することです。クロスプラットフォームの .NET 開発プラットフォーム - http://mono-project.com/Main_Page

使用するさまざまな GUI ツールキットもあります: http://www.mono-project.com/Gui_Toolkits

于 2011-03-07T13:22:23.467 に答える