Although it is not automatic, OS X Leopard supports Locations which are profiles containing specific network settings (such as IP address, wifi access points and proxies). You have to manually change it when you connect to a different network, but it is not that hard. I have been using this for a while now with taking my Macbook to school and connecting to their wifi.
Windows does not seem to have a similar feature built in, but I have seen people take advantage of Firefox's Profiles to achieve a similar function. They create a new profile for each different proxy they connect to so they do not need to manually change it each time they change networks.