1. Какую проверку.
2. Так:
Код:
while BASS_ChannelIsSliding(Channel, BASS_ATTRIB_VOL) do
begin
ProcessMessages;
Sleep(1);
end;
3. Тут, у кого какая фантазия, вариаций масса. Можно, к примеру, иметь переменную типа String где хранить имя текущей песни (в начале равна '') и при последующем нажатии копки, если не равно записать новое име и запустить загрузку и проигрывание.