//Gathering Largest Temperature:
auto highestTemperature = yearData[0].highTemperature;
int highestTemperatureDate = 0;
for(int j = 0; j < size; j++)
{
if(yearData[j].highTemperature > highestTemperature)
{
highestTemperature = yearData[j].highTemperature;
highestTemperatureDate = j;
}
}
//Gathering Smallest Temperature:
auto lowestTemperature = yearData[0].lowTemperature;
int smallestTemperatureDate = 0;
for (int j = 0; j < size; j++)
{
if (yearData[j].lowTemperature < lowestTemperature)
{
lowestTemperature = yearData[j].lowTemperature;
smallestTemperatureDate = j;
}
}
Я добавил int для самых маленьких и самых высоких температур
Хотя NSStatusItems появляются около внутренних "отдельно оплачиваемых предметов меню Apple", они отличны и ведут себя по-другому. Было бы хорошо, если бы Apple объединила объекты, которые могут появиться в правой области строки меню, но на данный момент раздел разделяется на отличное "яблоко, внутреннее" (справа), и "обеспеченный приложением (NSStatusItem)" слева.
Можно визуализировать различие путем помещения компьютера в режим снимка экрана (cmd-shift-4) и нажатия клавиши "Пробел" для переключения для "получения целого окна". Когда Вы нависнете над значками меню Apple, Вы будете видеть, что они все живут в единственном окне. Это объясняет их способность, которая будет легко управляться и перетаскиваться о. Парение над другими объектами показывает, что каждый NSStatusItem на самом деле живет в единственном собственном окне (который, оказывается, принадлежит приложению, которое установило его).
Лучше придерживаться NSStatusItem даже при том, что Вы не можете перетащить их. Это - недостаток от Apple, которую поймет большинство пользователей, даже если это будет раздражающим. Подчеркивание положительных компромиссов предложения более стабильного приложения в течение длительного срока будет обычно смягчать мнения Ваших клиентов (или менеджеры?), кто стремится к draggability.
Необходимо будет использовать NSMenuExtra
, нет NSStatusItem
, и сделайте пункт меню выполнением пакета в SystemUIServer
процесс, не Ваше собственное приложение. Вы также должны будете кодировать как предоставленный MenuCracker, чтобы заставить это работать.
NSMenuExtra
не документировано и не поддерживается и поэтому рассмотрел "взлом".
Мое предположение для того, чтобы там быть двумя API во-первых: меню дополнительный катастрофический отказ (или утечка памяти) означает весь катастрофический отказ процесса SystemUIServer или утечку памяти — включая другие сторонние модули, а также предоставленные систему. С объектом состояния, с другой стороны, такая проблема только влияла бы на Ваш собственный код.