<% Option Explicit %>
<%
Dim iCols, iRows, iChar, sChar
Function StrZero(ifpVal,ifpTam)
Dim sfStr, ifI
for ifI = 1 to ifpTam
sfStr = sfStr & "0"
next
sfStr = sfStr & CStr(ifpVal)
StrZero = Mid(sfStr,(Len(sfStr)-ifpTam)+1, ifpTam)
End Function
%>
<html>
<head>
<title>Tabela ASCII por Myers</title>
<script language="javascript">
d = document;
function CharOver(linha, coluna){
//loop para mudar a cor da coluna
for (iCols = 0; iCols < coluna; iCols++)
d.all["r"+linha+"c"+iCols].className = "clOver";
//loop para mudar a cor da linha
for (iRows = 0; iRows < linha/10; iRows++)
d.all["r"+iRows*10+"c"+coluna].className = "clOver";
d.all["r"+linha].className = "clOver"; //muda a cor do titulo da linha;
d.all["c"+coluna].className = "clOver"; //muda a cor do titulo da coluna;
d.all["r"+linha+"c"+coluna].className = "clSel";//muda a cor da celula do caraceter selecionado
d.all.charnumber.innerHTML = parseFloat(linha)+parseFloat(coluna);//muda o numero do caractere selecionado e exibe na célula superior direita
}
function CharOut(linha, coluna){
for (iCols = 0; iCols < coluna; iCols++)
d.all["r"+linha+"c"+iCols].className = "clNormal";
for (iRows = 0; iRows < linha/10; iRows++)
d.all["r"+iRows*10+"c"+coluna].className = "clNormal";
d.all["r"+linha].className = "Row"; //muda a cor do titulo da linha;
d.all["c"+coluna].className = "Col"; //muda a cor do titulo da coluna;
d.all["r"+linha+"c"+coluna].className = "clNormal";//muda a cor da celula do caraceter selecionado
d.all.charnumber.innerHTML = "000";//muda o numero do caractere selecionado e exibe na célula superior direita
}
</script>
<style type="text/css">
<!--
/* Célula Normal */
.clNormal { text-align: center; text-decoration: none; background-color: #FFFFFF;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000;
font-size: 12px;
border-bottom: 1px solid #E7E7E7; border-right: 1px solid #E7E7E7; }
/* Célula no evento de onMouseOver */
.clOver { text-align: center; text-decoration: none; background-color: #93BEE2;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000;
font-size: 12px;
border-bottom: 1px solid #E7E7E7; border-right: 1px solid #E7E7E7; }
/* Célula do caractere selecionado */
.clSel { text-align: center; text-decoration: none; background-color: #FF0000;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000 ;
font-size: 12px;
border-bottom: 1px solid #000000; border-right: 1px solid #000000;
border-top: 1px solid #000000; border-left: 1px solid #000000; }
/* Célula de título das colunas */
.Col { text-align: center; text-decoration: none; background-color: #EFF7FF;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000 ;
font-size: 12px;
border-bottom: 1px solid #CEE7FF; border-right: 1px solid #CEE7FF;
border-top: 1px solid #CEE7FF; /*border-left: 1px solid #E7E7E7; */}
/* Célula de título das linhas */
.Row { text-align: center; text-decoration: none; background-color: #EFF7FF;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000 ;
font-size: 12px;
border-bottom: 1px solid #CEE7FF; border-right: 1px solid #CEE7FF;
/*border-top: 1px solid #E7E7E7; */border-left: 1px solid #CEE7FF; }
/* Célula de exibição do numero do caractere selecionado */
.CharSel { text-align: center; text-decoration: none; background-color: #EFF7FF;
font-family: Verdana, Arial, Helvetica, sans-serif; color: #000000 ;
font-size: 12px; font-weight: bold;
border-bottom: 1px solid #CEE7FF; border-right: 1px solid #CEE7FF;
border-top: 1px solid #CEE7FF; border-left: 1px solid #CEE7FF; }
/* Links */
a {font-family: Verdana; color: #990000; font-size: 10px; text-decoration: none;}
a:hover {font-family: Verdana; color: #FF0000; font-size: 10px; text-decoration: none;
background: #000000; }
-->
</style>
</head>
<body bgcolor="#FFFFFF">
<div align="center"><b>
<font face="Verdana, Arial, Helvetica, sans-serif" size="2">Tabela ASCII</font></b>
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<%
iCols = 0
iRows = 0
'## for...next -> 0 a quantidade de caracteres (255)
for iChar = 0 to 255
if iCols = 0 and iRows = 0 then
'## Cria célula para exibição do número do caractere ##
response.write "<td class=""CharSel"" id=""charnumber"">000</td>"&vbCrlf
'## Cria as colunas com seus respecivos números ##
for iCols = 0 to 9
response.write "<td class=""Col"" id=""c"&iCols&""">"&iCols&"</td>"&vbCrlf
next
iCols = 10 '## Iguala esta variável a 10 para quebrar a linha mais abaixo ##
end if
if iCols = 10 then
'## Zera iCols e cria uma nova linha na tabela ##
iCols = 0
response.write "</tr><tr>"&vbCrlf
response.write "<td width=""5%"" id=""r"&iRows&""" class=""Row"">"&_
StrZero(iRows,3)&"</td>"&vbCrlf
'## São somados 10 a esta variável pq numera as linha de 10 em 10 ##
iRows = iRows + 10
end if
'## Caracteres Nulos são convertidos para [espaço] ##
if iChar = 0 or iChar = 9 or iChar = 10 or iChar = 11 or iChar = 12 or iChar = 13 or _
iChar = 32 or iChar = 256 or iChar = 257 or iChar = 259 then
sChar = " "
else
sChar = Chr(iChar)
end if
'## Constrói a linha com sua classe CSS, seu numero de linha e coluna
'(id = rxcx -> 'r' = representa a lina e 'c' = representa a coluna)
'e seus eventos de onMouseOver e onMouseOut ##
response.write "<td class=""clNormal"" id=""r"&iRows-10&"c"&iCols&""" "&_
"onMouseOver=""CharOver("&iRows-10&","&iCols&")"" "&_
"onMouseOut =""CharOut("&iRows-10&","&iCols&")"">"&_
sChar&"</td>"&vbCrlf
iCols = iCols + 1
next
%>
</table>
<br>
</div>
<p><font face="Verdana, Arial, Helvetica, sans-serif" size="1" color="#000000">Para ver
o código correspondente ao caractere segue-se a coluna mais o linha.<br>
Ex. @ = coluna 4, linha 60 - corresponde ao código 64.<br>
<a href="mailto:malkeivin@yahoo.com">Myers Malkeivin - malkeivin@yahoo.com</a>
</font>
</p>
</body>
</html>
Esta matéria foi postada originalmente no ASP4Developers por Rafael "M4yers" Rossi (site), que na época era "...". Hoje, vai saber...