我没有解决一般情况下的问题。我只是简单地使时间显示在当前时区中,并显示前一个小时。就我而言,当前时区是美国山区时间,而前一个小时则是美国太平洋时间。
该文件calendar-multiday-view.xml
在以下jar文件必须在雷鸟不运行进行编辑。
C:\ Users \ nreynold.ORADEV \ AppData \ Roaming \ Thunderbird \ Profiles \ profile \ extensions \ {e2fda1a4-762b-4020-b5ad-a41df1933103} \ chrome.jar
makeTimeBox()
必须按照注释指示更改方法:
function makeTimeBox(timestr, time2str, size) { // Add time2str parameter
var box = createXULElement("box");
box.setAttribute("orient", orient);
box.setAttribute("align", "left"); // Add
if (orient == "horizontal") {
box.setAttribute("width", size);
} else {
box.setAttribute("height", size);
}
var label = createXULElement("label");
label.setAttribute("class", "calendar-time-bar-label");
label.setAttribute("value", timestr);
label.setAttribute("style", "color: #4080C0; font-weight: bold;"); // Replace "align"
box.appendChild(label);
var label = createXULElement("label"); // Add
label.setAttribute("class", "calendar-time-bar-label"); // Add
label.setAttribute("value", time2str); // Add
box.appendChild(label); // Add
return box;
}
在之后添加以下方法makeTimeBox()
。
function makeTime(hour) {
var h = hour % 12;
if (h == 0)
h = 12;
var s = hour >= 12 ? " pm" : " am";
var result = h + s;
return result;
}
删除下面几行中出现的以下行 makeTimeBox()
var formatter = Components.classes["@mozilla.org/intl/scriptabledateformat;1"].
getService(Components.interfaces.nsIScriptableDateFormat);
更改以下行...
var timeString;
... 成为 ...
var timeString, time2String;
低约25行,替换以下行...
timeString = formatter.FormatTime("",
Components.interfaces.nsIScriptableDateFormat.timeFormatNoSeconds,
theHour, 0, 0);
box = makeTimeBox(timeString, durPix);
... 成为 ...
timeString = makeTime(theHour) + " MT";
ptHour = theHour - 1;
ptHour += 23;
ptHour %= 24;
ptHour += 1;
time2String = makeTime(ptHour) + " PT";
box = makeTimeBox(timeString, time2String, durPix);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句