The delete button shows up on a post only when the post is hidden, and it has no children. (And you have the right permissions such as being an Administrator.)
So hidden comments will always have the delete button, hidden answers will have delete if there are no comments, and hidden questions will have delete button if there are no answers or comments.
The other option is in Admin > Stats, there is a button to "Delete all hidden posts" which does a batch delete.