[Gtk-sharp-list] Confused about Gtk#
Tue, 16 Nov 2004 11:31:44 -0500
On Tue, 16 Nov 2004 17:59:02 +0200, Roland Giesler
> > Not so much, Gtk# is comparable with Microsoft .NET Framework
> > WinForms
> > toolkit for creating rich client GUI applications. Gtk# is
> > written in C#.
> So that means you use Gtk# to add a GUI for apps written with some other
> tool? Can one develop complete applications with Gtk# that can access a
> database or is that not what its for?
A good example is this: You can write console programs in VB. If you
use the WinForms toolkit you can also create GUI applications in VB.
Likewise, you can write Console programs in C#. If you use WinForms
or Gtk# or one of the other gui toolkits you can also create graphical
Which gui toolkit you use depends on your needs. Gtk# is nice because
it works on many platforms, not just Windows. However, choosing a
toolkit is very important and you should look at the pros and cons of
each toolkit to decide which you want to make a commitment to.
If you're going to make database applications, make sure you choose a
toolkit that will meet your printing needs, if you'll be creating
reports. So far I have not found any cross-platform printing
solutions. I've seen some that work well only on windows and others
that work well only on *nix.
BTW, Yes, you can create DB applications with Gtk#.
> > However if you need GTK+ you will have it bundle with the
> > appropriate installer. If you are willing to use a text
> > editor or an IDE like SharpDevelop you may be able to
> > forgo the MS .NET SDK when developing Mono applications \
> > with the Mono Combined installer.
> Why would I need Gtk+? Does it do more than Gtk#. Would you mind
> explaining briefly?
Gtk+ is a C (not C#) gui toolkit. It has been around for some time and
is cross platform and mature. Gtk# is the Gtk+ toolkit usable from C#
programs. So, if you use C you use Gtk+, if you use C# you use Gtk#.
> > > Is there somewhere where I can read a basic desciption of
> > how this all
> > > works. I'm still very much used to the MS way of doing
> > something, so
> > > I need some help here. The webpages I found don't help much.
I too am an experienced programmer and I found the book, "Mono
Developer's Handbook" to be phenominal. It is written with programmers
in mind and spends a lot of time talking about writting graphical
programs with Gtk#.
> Lastly, if I'm looking for an Open Source equivalent for Visual Studio .net,
> is there anything available (even if I have to use a combination of
In Windows I use SharpDevelop (www.icsharpcode.com) but it favors the
WinForms toolkit. You can tweak it to help you in your Gtk#
development but there is no GUI builder such as VB if you choose Gtk#
as your gui toolkit with SharpDevelop.
If you are on Linux, check out MonoDevelop, a port of SharpDevelop
that is being tailored specifically to Gtk# developers.
If you want a VB like form building experience, the most mature tool
I've seen is glade. I believe it works with C#. It has a lot of
similarities with the drag-and-drop tools of VB but it is also a bit
different in the way it works, so allow some time to get used to it.
> PS. I'm seriously considering doing a fairly large development in an Open
> Source environment. I'm a fairly proficient programmer (B.Sc Computer
> Fortran, PL/1 and quite a few other ancient languages. Would you say I'm
> doing the right thing by looking at Gtk#/Mono?
I just finished my first Mono based project, which is only my 2nd C#
project. I'll say that the end result is 25 - 100 times faster than
what it replaced, a PHP/Stored Procedure based program.
Another thing to consider is your target audience. If your users are
windows, be aware that Gtk programs feel just a little different than
other windows programs. Check out gaim (http://gaim.sf.net) and
you'll see what I mean. It's a very functional and usable toolkit;
it's just a little different.
If you really need cross-platform, the only good choices I know that
are opensource are Gtk# and Wx#.
If you are developing for Linux/Gnome environment then Gtk# is the
best choice I believe.
Of course, these are my opinions and I'm a new subscriber to the Gtk#
Matthew Nuzum | Makers of "Elite Content Management System"
www.followers.net | View samples of Elite CMS in action
email@example.com | http://www.followers.net/portfolio/