📄 un_css.pas
字号:
unit UN_CSS;
interface
uses
Classes,SysUtils,Forms,XMLDoc,xmldom, XMLIntf, msxmldom,Variants,Dialogs;
procedure SaveTempHTML(A1:TstringList;B1:TstringList;C1:TstringList;D1:TstringList;TitleName:string;Counts:integer);
procedure SaveTempHTML2(A2:TstringList;B2:TstringList;C2:TstringList;D2:TstringList;TitleName2:string;Counts2:integer);
procedure SaveTempHTML3(A3:TstringList;B3:TstringList;C3:TstringList;D3:TstringList;TitleName3:string;Counts3:integer);
procedure SaveTempHTML4(A4:TstringList;B4:TstringList;C4:TstringList;D4:TstringList;TitleName4:string;Counts4:integer);
procedure SaveTempHTML5(A5:TstringList;B5:TstringList;C5:TstringList;D5:TstringList;TitleName5:string;Counts5:integer);
procedure SaveTempHTML6(A6:TstringList;B6:TstringList;C6:TstringList;D6:TstringList;TitleName6:string;Counts6:integer);
procedure SaveTempHTML7(A7:TstringList;B7:TstringList;C7:TstringList;D7:TstringList;TitleName7:string;Counts7:integer);
procedure SaveTempHTML8(A8:TstringList;B8:TstringList;C8:TstringList;D8:TstringList;TitleName8:string;Counts8:integer);
procedure SaveTempHTML9(A9:TstringList;B9:TstringList;C9:TstringList;D9:TstringList;TitleName9:string;Counts9:integer);
procedure SaveTempHTML10(A10:TstringList;B10:TstringList;C10:TstringList;D10:TstringList;TitleName10:string;Counts10:integer);
procedure CSSMenu();
function RStringList1(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
function RStringList2(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
function RStringList3(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
function RStringList4(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
function RStringList5(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
implementation
uses
FM_RSS;
function RStringList1(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
begin
try
if LowerCase(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeName)='title' then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Count<>0 then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue=null then
TitleName1.Add(' ')
else
TitleName1.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue);
end
else
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue=null then
TitleName1.Add(' ')
else
TitleName1.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue);
end;
end;
except
TitleName1.Add(' ');
end;
Result:=TitleName1;
end;
function RStringList2(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
begin
try
if LowerCase(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeName)='pubdate' then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Count<>0 then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue=null then
TitleName2.Add(' ')
else
TitleName2.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue);
end
else
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue=null then
TitleName2.Add(' ')
else
TitleName2.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue);
end ;
end;
except
TitleName2.Add(' ');
end;
Result:=TitleName2;
end;
function RStringList3(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
begin
try
if LowerCase(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeName)='link' then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Count<>0 then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue=null then
TitleName3.Add(' ')
else
TitleName3.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue);
end
else
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue=null then
TitleName3.Add(' ')
else
TitleName3.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue);
end ;
end;
except
TitleName3.Add(' ');
end;
Result:=TitleName3;
end;
function RStringList4(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
begin
try
if LowerCase(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeName)='description' then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Count<>0 then
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue=null then
TitleName4.Add(' ')
else
TitleName4.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].ChildNodes.Nodes[0].NodeValue);
end
else
begin
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue=null then
TitleName4.Add(' ')
else
TitleName4.Add(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue);
end ;
end;
except
TitleName4.Add(' ');
end;
Result:=TitleName4;
end;
function RStringList5(XMLNode:IXMLNode;inode:integer;jnode:integer;SList:TStringList):TStringList;
begin
try
if LowerCase(XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeName)='read' then
if XMLNode.ChildNodes.Nodes[inode].ChildNodes.Nodes[jnode].NodeValue='Y' then
TitleName5.Add('Y')
else
TitleName5.Add('N');
except
TitleName5.Add('N');
end;
Result:=TitleName5;
end;
procedure CSSMenu();
begin
if FMRSS.N1.Down Then
SaveTempHTML(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N2.Down then
SaveTempHTML2(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N3.Down then
SaveTempHTML3(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
If FMRSS.n4.Down then
SaveTempHTML4(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N5.Down then
SaveTempHTML5(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N6.Down then
SaveTempHTML6(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N7.Down then
SaveTempHTML7(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N8.Down then
SaveTempHTML8(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N9.Down then
SaveTempHTML9(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
if FMRSS.N10.Down then
SaveTempHTML10(TitleName1,TitleName2,TitleName4,TitleName3,T_Name,Cou);
end;
procedure SaveTempHTML(A1, B1, C1, D1: TstringList;TitleName:string;Counts:integer);
var
SHtmlFile:TStringList;
i:integer;
begin
SHtmlFile:=TStringList.Create ;
SHtmlFile.Clear;
SHtmlFile.Add('<html><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=gb2312">');
SHtmlFile.Add('<style type="text/css">');
SHtmlFile.Add(' td,p,li,input,select,div,span {font-size:12px;}');
SHtmlFile.Add(' table,td,img,div,span{border: none;margin: 0px 0px 0px 0px;padding: 0px 0px 0px 0px;}');
SHtmlFile.Add(' .f10 {font-size: 10px;}');
SHtmlFile.Add(' .f12 {font-size: 12px;}');
SHtmlFile.Add(' .f14 {font-size: 14px;}');
SHtmlFile.Add(' .f16 {font-size: 16px;}');
SHtmlFile.Add(' .lh17 {line-height:17px;}');
SHtmlFile.Add(' .lh19 {line-height:19px;}');
SHtmlFile.Add(' A:link {color:#00f;}');
SHtmlFile.Add(' A:visited {color:#800080;}');
SHtmlFile.Add(' A:active {color:#f00;}');
SHtmlFile.Add(' A:hover {color:#f00;}');
SHtmlFile.Add(' .tree a:link {text-decoration: none;color:#003398;font-weight: bold;}');
SHtmlFile.Add(' .tree a:visited {text-decoration: none;color:#003398;font-weight: normal;}');
SHtmlFile.Add(' .tree a:active,.tree a:hover {text-decoration: none;color:#FD0100;}');
SHtmlFile.Add(' .tree {color:#222;line-height:19px;width:96%;text-align:left;}');
SHtmlFile.Add(' .tree #channel{font-size:16px;font-weight:bold;color:#013299;text-align:center;padding:5px 0 10px 0;border-bottom:2px solid #005FA9;clear:both;margin-bottom:8px;margin-top:8px;}');
SHtmlFile.Add(' .tree #block{margin-bottom:9px;padding-bottom:10px;padding-top:5px;border-bottom:2px dotted #006699;}');
SHtmlFile.Add(' .tree #title{font-weight:bold;font-size:14px;clear:both;margin-bottom:5px;margin-top:5px;color:#003398} ');
SHtmlFile.Add(' .tree #author{color:#808080;float:left;margin-bottom:5px;}');
SHtmlFile.Add(' .tree #time{color:#808080;float:right;margin-bottom:5px;}');
SHtmlFile.Add(' .tree #description{clear:both;}');
SHtmlFile.Add(' .tree #readall{text-align:right;font-weight:bold;}');
SHtmlFile.Add(' .tree #readall a{text-decoration: underline;font-weight: bold;}');
SHtmlFile.Add('</style>');
SHtmlFile.Add('</head>');
SHtmlFile.Add('<body bgcolor=#F3F7F8 topmargin=5 marginheight=5 leftmargin=5 marginwidth=5>');
SHtmlFile.Add('<center>');
SHtmlFile.Add('<div id='''+'list'''+' class='''+'tree'''+'>');
if TitleName<>'' then
SHtmlFile.Add('<div id='''+'channel'''+'>'+TitleName+'</div>');
for i:=0 to counts-1 do
begin
SHtmlFile.Add('<div id='''+'block'''+'>');
SHtmlFile.Add(' <div id='''+'title'''+'>'+'·<a href='+D1.Strings[i]+' target=_blank>'+A1.Strings[i]+'</a></div>');
if B1.Count=D1.Count then
SHtmlFile.Add(' <div id='''+'time'''+'>'+B1.Strings[i]+'</div>')
else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -