1 (изменено: verSys, 2009-01-25 22:53:08)

Тема: HTA: программа подбора сочетаний цвета для Web-страниц

Программа позволяет визуально подбирать цвет шрифта и фона для Web-странички.
Результат выбора отображается визуально в специальном окошке.
Программа также отображает код выбранного цвета шрифта и фона.
Имеется сервисная функция "Копировать в буфер обмена". При использовании этого сервиса код выбранного цвета автоматически копируется в буфер обмена, пользователю остается только вставить его в HTML-код странички.
Для выбора цвета используется стандартный диалог выбора цвета, идея использования этого диалога предложена Poltergeyst 'ом: http://forum.script-coding.com/viewtopic.php?id=378

<html>
<!-----------------------------------------------------------* 
*       Программа для подбора цветовых сочетаний             *
*------------------------------------------------------------*
*                    ChPalette.hta                           *
*------------------------------------------------------------*
*           Programming by vksin aka dr.VerSys               *
*                                                            *
*                  mailto:vksin@ya.ru                        * 
*                -----------------------                     *
*                         2009                               * 
*------------------------------------------------------------>
<head>
<meta http-equiv="Content-Type"
 content="text/html; charset=windows-1251">
<title>Подбор цвета</title>
<HTA:APPLICATION ID="dw01"
APPLICATIONNAME="Selection_Color"
BORDER="thin"
BORDERSTYLE="sunken"
CAPTION="yes"
CONTEXTMENU="yes"
MAXIMIZEBUTTON="no"
MINIMIZEBUTTON="no"
SCROLL="no"
SHOWINTASKBAR="yes"
SYSMENU="yes">
<STYLE>
.stFontA{font-family:Tahoma;font-size:10pt;
         color:#000000;} 
.stFontB{font-family:Tahoma;font-weight:bolder;
          font-size:8pt;color:#000000;} 
</STYLE>
<!----------------------------------------------------------->
<SCRIPT language="VBScript">
Dim color, flagBtn
'установка размеров и положения окна
 window.resizeTo 280, 300
 window.moveTo (screen.width\2)-140, (screen.height\2)-150
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub prSetColor(btn)
'процедура установки цвета объекта
 flagBtn=btn 'получает номер кнопки 
  On Error Resume Next
     color=DlgColor.choosecolordlg()
  If color=0 Then Exit Sub   
     color=dhGetColor(color)
  If flagBtn = 0 Then  '"Цвет текста"
     'устанавливает цвет текста в тестовом окне
     With document.all
         .idColorFont.style.Color=color 
         .idValFont.innerHTML=color
     End With
  Else '"Цвет фона"
     'устанавливает цвет фона тестового "окна"
     With document.all
        .idColorCell.style.backgroundColor=color 
        .idValCell.innerHTML=color
     End With
  End If
  'Если указанное ниже условие выполняется - копирует в буфер обмена
  If chClipBoard.Checked = True Then clipboardData.setData "text", color
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Function dhGetColor(color)
 'Функция обработки полученого значения 
 'из стандартного диалога выбора цвета
 Dim vLen, cR, cG, cB
 On Error Resume Next
    color=Hex(color)
    vLen = Len(color) 
 Select Case vLen   
        Case 2 
             cR=Right(color,2)
             cG="00"
             cB="00"
        Case 4
             cR=Right(color,2)
             cG=Left(color,2)
             cB="00"
        Case 6 
             cR=Right(color,2)
             cG=Mid(color,3,2)
             cB=Left(color,2)
        Case Else
             cR="00"
             cG="00"
             cB="00"
 End Select
   color = "#" & cR & cG & cB
   dhGetColor=color
 End Function
</SCRIPT>
<!----------------------------------------------------------->  
</head>
<body bgcolor="#EAEAEA">
<center>
<table border="0" cellpadding="0" width="220">
  <tr><td><table border="1" cellpadding="0" width="100%" bgcolor="#FFFFFF">
            <tr><td align="center" width="100%" height="100" id='idColorCell'>
                <font size="4" id='idColorFont'><strong>Тестовое окно</strong>
                </font></td></tr>
          </table></td>
  </tr>
  <tr><td height="5"></td></tr>
  <tr><td><table border="0" cellpadding="0" cellspacing="0" width="100%">
           <tr><td width="100" align="center" class='stFontB'>Цвет текста</td>
                <td width="20">&nbsp;</td>
                <td width="100" align="center" class='stFontB'>Цвет фона</td>
            </tr>
            <tr><td height="5"></td>
                <td></td>
                <td></font></td>
            </tr>
            <tr>
               <td><table border="1" width="98">
                   <tr><td align="center" bgcolor="#FFFFD9" id='idValFont' 
                       class='stFontA'>#000000</td></tr></table></td>
               <td></td>
               <td><table border="1" width="98"><tr><td align="center" 
                   bgcolor="#FFFFD9" id='idValCell' class='stFontA'>#FFFFFF</td></tr>
                   </table></td>
            </tr>
            <tr><td height="5"></td>
                <td></td>
                <td></font></td>
            </tr>
            <tr>
               <td><input type="button" name="btnFont" value="Изменить"
                    style="width:98;" onClick='prSetColor(0)'></td>
               <td>&nbsp;</td>
               <td><input type="button" name="btnPage" value="Изменить"
                    style="width:98;" onClick='prSetColor(1)'></td>
            </tr>
        </table>
        </center></td>
    </tr>
    <tr>
        <td height="5"></td>
    </tr>
    <tr>
        <td bgcolor="#FFFFD9"><input type="checkbox" name="chClipBoard">
           <font size="1">&nbsp;Копировать значение цвета в буфер обмена</font></td>
    </tr>
</table>
</center>
<object id="DlgColor"
 classid="CLSID:3050f4e1-98b5-11cf-bb82-00aa00bdce0b"
 style="position:relative;left:0;top:0"></object>
</body>
</html>

Замечания:
1. Диалоговое окно, при выборе черного цвета и при нажатии кнопки "Отмена", возвращает равные значения (0 в обоих случаях).
2. В Windows 98 сервисная функция "Копировать в буфер обмена" не работает.

2

Re: HTA: программа подбора сочетаний цвета для Web-страниц

Еще один очень интересный вариант HTA приложения для подбора цветов.
Описание - от автора Fc-xix:
Цветочник 0.4

О программе
HTA-программа «Цветочник» поможет вам быстро и эффективно подобрать цвет для вашего творения, из трех предлагаемых палитр.

Две палитры используются в веб-дизайне: первая — Названные цвета, которая содержит все названия цветов поддерживаемых Internet Explorer-ом начиная с четвертой версии, а вторая — Безопасные цвета, содержит 216 безопасных цветов (Web-Save colors), которые на всех платформах и в любом браузере будут выглядеть одинаково.

Третья, Системная палитра содержит 28 системных цветов, которые используются в среде Windows. Их лучше всего применять при создании Windows-подобных приложений. Например в «Цветочнике» используются исключительно системные цвета.

Использование
После запуска программки вы увидете окошко в верху которого находится ниспадающий список с названиями трех палитр. При выборе одной из них, в рамке снизу, появится таблица цветов данной палитры.

Далее, кликая по любому из цветов левой кнопкой мыши, вы тем самым выбераете нужный цвет, который автоматически закрашивает "окошко предпросмотра" в левом нижнем углу программки.

Ну и под конец, — просто кликнув по кнопке со стрелкой напротив любого из четырех вариантов этого цвета, вы сможете скопировать его (цвета) значение в буфер обмена:

Четыре варианта представления цвета:
имя — имя цвета (red; gold; white и т. д.).
веб — шестнадцатеричное значение цвета (#0000FF; #C0C0CD и т. д.)
rgb — десятичное значение цвета (rgb(127,12,34); rgb(0,0,255) и т. д.)
win — номер цвета используемый в Windows (от 0 до 16777215),
вычисляемый по формуле (R+(G*256)+(B*65536)).
Нажав на клавишу ESC — программка закроется.

Post's attachments

cp_v04.zip 6.3 kb, 363 downloads since 2009-10-29 

You don't have the permssions to download the attachments of this post.