But to be honest, I am now somewhat confused by the answer of DannyHamilton. So I'd like to ask: aren't all key pairs stored in the wallet, then? Or why is a frequent backup especially necessary with qt?
Bitcoin-Qt pre-generates 100 key pairs, and uses one of those every time you send a transaction.
Then it generates a brand new key pair and adds it to the pool of pre-generated key pairs.
So if you install Bitcoin-Qt and then create a backup, the backup will have 100 unused key pairs.
Then if you generate 25 receiving addresses and send out 75 transactions the backup that you previously made will still only have the 100 key pairs that where backed up. However, your Bitcoin-Qt will have 200 key pairs.
That's 100 key pairs that are not in your backup.
The next transaction that you send will use one of these newer key pairs that are not in your backup. If you then restore the backup, you'll lose the bitcoins that were associated with that most recent public key.
Perfect answer - now I understand. Thanks!
Just one more thing to add.
You can pre-gen more keys by using the argument "-keypool=