I'm flying from Reykjavík to Ljubljana via Frankfurt. I will have checked luggage. Is a transit time of 45 minutes enough?
It's enough if you are traveling on one ticket, issued by one airline, as the airline has the responsibility of making sure there is sufficient and reasonable time for you to make the connection, and to compensate and make alternate arrangements otherwise.
If you bought two tickets on two separate airlines, then 45 minutes is not enough, since you'll have to collect and re-check your bags and the airline responsible for the second flight will say that it was your responsibility to get to the airport on time.
Better always have not less than an hour between the flights. Flights can be delayed for no obvious reasons and these 20 minutes can turn out to be crucial. And there's no use telling people in the queue that you'll be late for your next flight because everyone is in a hurry. I wouldn't recommend a 45 minute transit even if you have no checked luggage and only one ticket.