Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 22.12.2011, 22:58
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

стр. 53:
Код:
oShell.SendKeys "% n{down 3}{enter}"
Ответить с цитированием
  #12 (permalink)  
Старый 23.12.2011, 10:02
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Сообщение от nerv_
как мне кажется, зная дескриптор окна через Win API (VBScript) можно нарулить то, что Вам нужно.
Увы, я не умею...

Сообщение от nerv_
какая строка за это отвечает
вот рабочий пример:
<html>
<head>
<title></title>
  <hta:application
    applicationname=test
  />
<script language="VBScript">
	sub start()
		Set oShell = CreateObject("WScript.Shell")
        oShell.SendKeys "% n{DOWN 3}{ENTER}"
	end sub
</script>
</head>
<body>

<button onclick="start">Свернуть</button></td>

</body>
</html>

Последний раз редактировалось bk99, 23.12.2011 в 10:08.
Ответить с цитированием
  #13 (permalink)  
Старый 19.02.2012, 13:17
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Ну вот, сделал, что хотел:



При запуске Таймер сворачивается на панель задач, а по истечении времени пикает системным динамиком и выбрасывает окно с предупреждением.
Можно ли сделать так, чтобы главное окно Таймера нельзя было масштабировать (растягивать) потянув за уголок или за рамку окна?
Спасибо.
Ответить с цитированием
  #14 (permalink)  
Старый 19.02.2012, 14:05
Аватар для Magneto
Люмус, Емаксос Developer!
Отправить личное сообщение для Magneto Посмотреть профиль Найти все сообщения от Magneto
 
Регистрация: 06.05.2010
Сообщений: 677

<hta:application
  id="MyApp"
  applicationname="MyApp"
  border="dialog"
  borderstyle="normal"
  innerborder="no"
  icon="myapp.ico"
  maximizeButton="no"
  minimizeButton="yes"
  scroll="no"
  selection="no"
  showintaskbar="yes"
  singleinstance="yes"
  version="1.0">
</hta:application>
Ответить с цитированием
  #15 (permalink)  
Старый 19.02.2012, 18:00
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Сообщение от Magneto Посмотреть сообщение
...
  border="dialog"
...
Да, то, что надо!
Спасибо!
Ответить с цитированием
  #16 (permalink)  
Старый 09.03.2012, 22:38
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Теперь такой вопрос. Сделал, чтобы время отображалось не только в главном окне программы, но и в названии окна. Т.е. было так:
document.getElementById('c').innerHTML=f2(h)+':'+f2(m)+':'+f2(s);

а стало так:
document.title=document.getElementById('c').innerHTML=f2(h)+':'+f2(m)+':'+f2(s);

Но, почему-то, время, отображаемое в названии окна, немного отстаёт от времени, отображаемом в самой программе. Чуть-чуть, буквально на долю секунды, но отстаёт! В чём может быть причина? Как это поправить? Xочу, чтобы время там и там тикало синхронно.
Спасибо.

<title>Timer</title>
  <hta:application
	border=thin
    innerborder=no
    scroll=no
    contextmenu=no
	maximizeButton=no
  />

<script language="JavaScript">
	var h=m=s=0;
	var timeId=null;
	resizeTo(380,126);
	moveTo((screen.width/2-190),(screen.height/2-63));
function f2 (v) {return (v<10?'0'+v:v)}
function inittime(hour,min,sec) {
	h=Math.max(hour,0); m=Math.max(min,0); s=Math.max(sec,0);
	timeID=setTimeout("showtime()",1000)}
function showtime() {
	var t=h*3600+m*60+s;
	setTimeout("showtime()",1000);
	document.title=document.getElementById('c').innerHTML=f2(h)+':'+f2(m)+':'+f2(s);
	if (t>0) {changetime()}
	else {fin()}}
function changetime() {
	s--;
	if (s<0) {
		s=59;
		m--;
		if (m<0) {
			m=59;
			if (h>0) h--;
	else {h=m=s=0}}}}
</script>

<script language="VBScript">
sub fin()
	Set S = CreateObject("WScript.Shell")   
	S.Run "%comspec% /c" & Chr(7),0
	MsgBox "Time is over!", vbSystemModal
	close
end sub
</script>

<style>
	body {background:buttonface; margin:2}
	table {border-collapse:collapse; text-align:center}
	button {height:55; border; font:50 monospace; color:buttonshadow}
	input {background-color:buttonface; border:transparent; height:66; width:97; font:86/.77 sans-serif}
	#a {font:55 sans-serif}
	#b {font:22/.76 monospace; color:buttonshadow}
	#c {font:95/.95 sans-serif}
</style>

<div id="c">
<table>
  <tr id="a">
	<td><input id="h" value="00" maxlength="2"></td>
	<td>:
	<td><input id="m" value="00" maxlength="2"></td>
	<td>:
	<td><input id="s" value="00" maxlength="2"></td>
	<td><button title="Start" onclick="inittime(
			getElementById('h').value,
			getElementById('m').value,
			getElementById('s').value)">&#9658;</button></td>
  <tr id="b">
	<td>hour
	<td>
	<td>min
	<td>
	<td>sec
	<td>
</table>
</div>
Ответить с цитированием
  #17 (permalink)  
Старый 12.05.2012, 10:12
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Прошу помощи в таком вопросе.
Сейчас таймер запускается по нажатии на кнопку "Start". Как сделать, чтобы таймер запускался при нажатии Enter. Т.е. вводим в поля input часы, минуты и секунды, нажимаем Enter, и таймер запускается.
Спасибо.
Ответить с цитированием
  #18 (permalink)  
Старый 12.05.2012, 10:28
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Делаем форму, кнопку Start делаем submit, запуск таймера делаем на событии onsubmit формы, не забывая остановить обработку события, чтобы форма не отправилась, profit.
Ответить с цитированием
  #19 (permalink)  
Старый 12.05.2012, 12:40
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Kolyaj, спасибо за ответ!
Честно говоря, имею наглость надеяться на то, что _НекийДобрыйЧеловек_ сделает это всё за меня покажет мне на примере как это всё делается. Сам я не силён в этом.
Мне правда очень неудобно!
Прошу прощения!
Ответить с цитированием
  #20 (permalink)  
Старый 03.06.2012, 14:21
Интересующийся
Отправить личное сообщение для bk99 Посмотреть профиль Найти все сообщения от bk99
 
Регистрация: 22.11.2011
Сообщений: 16

Сообщение от bk99 Посмотреть сообщение
Как сделать, чтобы таймер запускался при нажатии Enter.
в кнопку button просто добавил
type="submit"
и всё заработало!
т.е. стало так:
<button type="submit" title="Start" onclick="inittime(getElementById('h').value,getElementById('m').value,getElementById('s').value)">

А как теперь сделать, чтобы кнопка button исчезла? Если поставить style="display:none;", то кнопка становится невидна, но и таймер по Enter не запускается.
Спасибо.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Таймер обратного отсчета с часовым поясом destby Общие вопросы Javascript 0 03.08.2011 18:48
таймер обратного отсчёта , помогите дописать ДимаЯл Элементы интерфейса 5 08.01.2011 10:20
Графический таймер обратного отсчета bobri4 Элементы интерфейса 4 24.08.2009 22:50
Таймер обратного отсчета Mihael-Vlz Общие вопросы Javascript 1 14.06.2009 19:21
таймер обратного отсчета Mignon Общие вопросы Javascript 1 07.06.2008 17:16