They both use different toolkits. The only difference is that both Windows and Mac have a defined standard theme, which all toolkits obey.
If you install a cross-toolkit theme, such as BlueCurve, Galaxy or (now) Oxygen, you have that exact same thing under Linux.
Package name is "x11-themes/oxygen-gtk". You will probably also want to install "kde-misc/kcm_gtk" which gives you a "Gtk Styles & Fonts" button in System Settings ("Lost and Found" section), from which you can select "oxygen-gtk" for Gtk apps.
For example, a Qt application don't need a cross-toolkit theme too look at home in Windows or GNOME, any Win32/GTK+ theme will work, because they theme the Win32/GTK+ GUI elements you actually see on the monitor.
That being said, a cross-toolkit theme is way better than two different themes on the same desktop, so Oxygen-Gtk is better than nothing.
BTW, you can get the GTK+ file and print dialogues in Qt applications, by selecting the GTK+ backend for Qt (the default when running in GNOME)...
Well, I suppose Gnome can only win from this. After all, it means that when running Gnome, most apps will look and work OK, since Gtk apps do well in Gnome (naturally) and Qt apps also. But not the other way around.
Smells a bit like a Microsoft policy or something :P Turn your lack of features into an advantage.
First of all, Qt draws itself on Linux. There is a hack where you can use GTK to paint Qt elements, and it was recently integrated into mainline Qt to help GNOME users. If you are not running a GNOME environment, Qt draws itself natively, which is faster and more stable.
On MacOSX, Qt fakes the native look and feel by drawing it itself. Java programs do something similar.
I'm not 100% about Qt on Windows, but Microsoft ITSELF uses more than two different toolkits on windows (or rather very different versions of the same toolkit, with slightly different look and feel), and Java fakes the look and feel too (badly), so this is a moot point.
This was a separate project which was merged into Qt 4.5.For example, a Qt application don't need a cross-toolkit theme too look at home in Windows or GNOME, any Win32/GTK+ theme will work, because they theme the Win32/GTK+ GUI elements you actually see on the monitor.
Essentially, it's a hack for GNOME users, and not the way Qt is supposed to work
You can do the same thing for GTK apps.
linky). He is one of the main developers of Compiz.
According to this very article, Canonical "is driving the development of dconf bindings for Qt". Confirmed on Mark's blog: they have contracted with Ryan Lortie to contribute to Qt.
A quick search confirms that they are also funding or driving a number of other interesting projects.