We recently merged KDE 4.6 in Frugalware -current and since now it uses upower, it catches the sleep button of my netbook. The problem is that it tried to suspend instead of hibernation - what I wanted.
The trick is easy, but not really obvious. First, I disabled suspend/hibernate in /usr/share/polkit-1/actions/org.freedesktop.upower.policy so that I can play with this without actually hibernating/suspending the system.
Second, I went to System Settings → Input actions → Global, selected "KDE services" and there you can see Suspend and Hibernate as well. Go to Hibernate, and set a custom shortcut: it will ask if you want to remove the sleep button from Suspend - the answer is obviously yes.