Short-time Fourier transform Tradeoffs
Window functions
Different window functions introduce different amounts of scalloping noise/artifacts. Scalloping noise occurs when the frequency bins of a DFT don't optimally align with the DTFT.

The shape of the DTFT corresponds to the Fourier transform of the window function, and thus window functions whose Fourier transform has shorter side-lobes will have less scalloping noise. However, window functions with less scalloping noise are narrower in the time domain (the Rectangular window has the most scalloping noise) and thus, without window overlapping, will lose the frequencies at the edges of the window.
Terminology
Since the frequency content of overlapping windows are displayed sequentially rather than averaged, I find talking about overlapping windows confusing. I would rather divide the time domain into Frames for which we try to obtain a picture of the frequencies in their range as accurately as possible. This may involve extending the window function past the range of the frames to minimize the scalloping noise/windowing loss tradeoff. However, this will introduce leakage of the frequencies between neighboring frames (reducing time resolution).
Window lengths and sample rates
Edit:
My answer here was bad and I replaced it with this:

Frequency resolution is how similar the window function's magnitude in frequency space is to the Dirac delta function. This is because the product of the window and the signal in the time domain becomes convolution in the frequency domain (and a convolution with the Dirac delta function is a sampling which would give perfect frequency resolution) The fatter the mainlobe (quantified by it's variance), and the higher the sidelobes, the worse the frequency resolution. Additionally, Time resolution can be quantified a the variance of the window function in the time domain.

From wikipedia https://en.wikipedia.org/wiki/Short-time_Fourier_transform#Resolution_issues:

The product of the standard deviation in time and frequency is limited. The boundary of the uncertainty principle (best simultaneous resolution of both) is reached with a Gaussian window function, as the Gaussian minimizes the Fourier uncertainty principle.

The key to note is that Praat's Gaussian Window is twice as long as it's other window functions. In the STFT you can extend you can have an extremely long window function compared to the time interval you want a view of the frequencies for, so long as the window function is close enough to zero for outside of your desired interval. This is optimal. Use the adjustable windows https://en.wikipedia.org/wiki/Window_function#Adjustable_windows
Zero padding
Zero padding doubles the number of bins while keeping the maximum frequency the same, interpolating the DTFT:
 
From Dan Boschen's answer What happens when N increases in N-point DFT