Как запустить скринсейвер?

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Как запустить скринсейвер?

Сообщение Терминатор » 20.07.2005 (Ср) 14:56

Всем VB-ешникам привет!
:lol: Наконец-то я на любимом форуме.! :lol:

Делаю заставку и столкнулся с проблемой - как передать значение из ComboBox-а таймеру. Чтоб исходя из этого значения
Form сама делала Show(Load).
Если по-конкретней, то - не знаю как сделалать чтоб ComboBox "помнил" выбранное значение, ведь после закрытия формы он его "сбрасывает", то же происходит и с галочкой, она "снимаеться". после закрытия программы, а она-то должна как раз её автоматически запускать.
Hasta la vista, baby!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 20.07.2005 (Ср) 14:59

GetSetting/SaveSetting? :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 20.07.2005 (Ср) 17:23

Здрвствуй, Serg. :arrow:

Код: Выделить всё
GetSetting/SaveSetting?


Нет такого в списке.
А применение даёт ошибку.
Hasta la vista, baby!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 20.07.2005 (Ср) 18:33

Тьфу ты, форум по .NET :)

Я имел в виду, что сохранять указанное значение там, где оно не сбрасывается, а именно в реестре :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 20.07.2005 (Ср) 18:49

А... VB.NET, а я то уже всё перетыкал, думаю может как тот раз, ты мне подсказал, -
Если, когда ставишь точку, свойство Style не показывается, это не значит, что его нет

в VBA дело было...
в реестр говоришь...? Не понял. Обратиться к реестру в Windows?
Или у себя в программе создать наподобие реестра? Переменная которая будет запоминать значения ComboBox-а и CheckBox-а?
Однако как она запустит уже закрытую программу?
Так или иначе у меня уже всё готово, осталось только это - "помнить" и "самозапускаться".
Hasta la vista, baby!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 20.07.2005 (Ср) 18:52

Ну вот.
Теперь я окончательно не понял, что тебе надо :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 20.07.2005 (Ср) 19:25

Ну ты даёшь :D
First
Давай с другой стороны.Как бы ты сделал, чтоб Form открывалась(загружалась) через, допустим 1 минуту?
После закрытия её обычным способом(мышкой), она опять откроется(загрузиться) через 1 минуту.
Second
Ты создал Form, на ней (но у меня почему-то Form ассоциируется с мужским полом, честно), создал ComboBox, в нём
значения 10, 20, 30. При выборе любого значения, допустим 10, оно появляется в ComboBox, после закрытия Form и повторного открытия это значение должно сохраниться.
Third
Главное, значение которое будет содержаться в ComboBox, допусти 10, передаётся Timer-у, и он, Timer, понимает, что через 10 минут надо открыть эту Form.
Fourth
Но мне нужна теория, готовая программа мне не нужна, иначе я потеряю весь смысл наслаждения. Тем более что почти 50% готово. И как только будет готово всё, я её, или его прям здесь и выложу. 8)
Hasta la vista, baby!

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 20.07.2005 (Ср) 19:56

В Москве уже 21 час, пойду-ка я наверное уже домой, завтра продолжим.
"Пробу" прикрепил.
Но она сама не запуститься, прийдётся на неё,
или его правым пальцеп тыркнуть.
Hasta la vista, baby!

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 20.07.2005 (Ср) 20:01

Ишь ты, так я и не научился прикреплять файл.
Ну тогда, как всегда вот здесь - http://www.webfile.ru/415381
Hasta la vista, baby!

Shurrik
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 110
Зарегистрирован: 20.05.2004 (Чт) 5:35
Откуда: Керчь, Крым

Сообщение Shurrik » 21.07.2005 (Чт) 6:39

Создай модуль, который будет запускать твою форму и хранить параметры между запусками.
Колесо: Хочешь жить? Умей вертеться.

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 22.07.2005 (Пт) 9:54

Конечно, Shurrik, так и делаю.
Однако, как сохранить галочку на ChekBox ? Или может ты знаешь метод при котором можно обойтись без этого параметра. Мне она нужна для \программа - "включена"\, \программа - "выключена"\, чтоб не запускалась сама по умолчанию.
А пока добавил текст, причём при движении он меняет свой цвет, вроде ничего смотрится. Только мышь отключил. Снять экран можно любой клавишей.
Файл тут - http://www.webfile.ru/417934
Hasta la vista, baby!

GSerg
Шаман
Шаман
 
Сообщения: 14286
Зарегистрирован: 14.12.2002 (Сб) 5:25
Откуда: Магадан

Сообщение GSerg » 22.07.2005 (Пт) 10:34

Галочку на CheckBox сохранять в переменной типа boolean, объявленной в том же модуле :)
Как только вы переберёте все варианты решения и не найдёте нужного, тут же обнаружится решение, простое и очевидное для всех, кроме вас

PUNK-GRUNGER
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 145
Зарегистрирован: 10.06.2004 (Чт) 14:22
Откуда: Украина, Николаев

Сообщение PUNK-GRUNGER » 22.07.2005 (Пт) 12:29

А если объявить NEW форму как Паблик де -нить в модуле? А потом просто не выгружать ее из памяти... Или хз. У меня на работе васика нет :) ПРийду тыкану.

Ваня
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 24.06.2005 (Пт) 22:23
Откуда: Московская обл., д. Нестерово

Сообщение Ваня » 22.07.2005 (Пт) 16:48

Если я правильно понял тебе надо сохранять настройки программы (галочки и т.п.), так что-бы при запуске программы (или очередном запуске формы где находится эта галочка) можно было считывать предыдущие настройки.

Тогда всё очень просто:
Сначала сохраняешь значение этой галочки и других в обычный текстовый файл, а потом когда надо считываешь в той же последовательности.

Например:
Последовательность:
CheckBox.Checked
CheckBox.Checked
Button.Name
CheckBox.Checked


Содержание файла:
True
False
Кнопка 7
True

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 22.07.2005 (Пт) 17:33

Серьёзно ?
В текстовый файл? То бишь при каждом изменении будут производиться записи в нём. Потом сам файл надо где-то сохранять.
А каков будет метод считывания из текстового файла, если файл (Form) закрыт и сам Text тоже закрыт,
то есть если он прочитает что True ведь надо запустить Form.
О, может что-то есть полегче, ведь я не профессиональный программист ! В конце-то концов, может есть такой простой метод при котором
If CheckBox1.Cheked Then
' Запустить Form
Else
' Не загружать Form.
End If

Или я совсем уж дилитанствую....?
Hasta la vista, baby!

Ваня
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 24.06.2005 (Пт) 22:23
Откуда: Московская обл., д. Нестерово

Сообщение Ваня » 23.07.2005 (Сб) 9:14

Храни значения CheckBox1.Cheked в переменной в главной форме.
При изменении значения CheckBox1.Cheked в форме настроек изменяй значение переменной в главной форме.
Текстовый файл нужен только для считывания при загрузке программы (в переменную в главной форме). А при выходе из программы сохрани значение CheckBox1.Cheked в этот текстовый файл (значение CheckBox1.Cheked прочитаешь из переменной в главной форме). При загрузке формы настроек считываешь значение в CheckBox1.Cheked из переменной в главной форме.

Располагать файл настроек лучше в директории, где лежит EXE.

Если форма в данный момент не загружена ты не сможешь прочитать ничего из этой формы (значения переменных, свойств, контролов...)!!!

Ваня
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 24.06.2005 (Пт) 22:23
Откуда: Московская обл., д. Нестерово

Сообщение Ваня » 23.07.2005 (Сб) 9:18

Хотя, если ты хочешь, что бы у каждого пользователя были свои настройки, то лучше хранить файл в C:\Documents and Settings\ИмяПользователя\Application Data\НазваниеМоейФирмы\НазваниеПрограммы

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Сообщение Viper » 23.07.2005 (Сб) 10:10

Народ, чей то я вас не пойму. А реестр почему не подходить для хранения отдельных настроек для каждого юзера между запусками программы???
Весь мир матрица, а мы в нем потоки байтов!

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 23.07.2005 (Сб) 20:39

Если форма в данный момент не загружена ты не сможешь прочитать ничего из этой формы (значения переменных, свойств, контролов...)!!!


Хм... А-ну ка, просветите меня, а что тогда такое вирусы с точки зрения программиста, как программа?
Я хватанул в прошлом году маленький такой файлик, несколько килобайт, так после него даже NortonAntivirus ногами задрыгал и сказал что "Hasta la Vista...", а слово baby он уже произнести не смог, ибо перешёл в неведомое мне состояние и больше из него невыходл даже после перезагрузки. Windows работал так словно его ногами в живот...
Дорогой Ваня, а я между прочим на ту гадость ничем не жал и не давил, руками не трогал и ногами не наступал.
Она сама запустилась :shock: . Тут понимаешь ли, несчастный Cntr+Alt+Del
второй день перехватить не могу , а кто-то, мне Win вместе с AntiВирем завалил за две секунды.
Ну и... :?: или на VB "самозапускание" за пределами возможного? Мне конечно Win глушить не надо, тут бы, как я уже говорил выше, хотя бы просто с клавитурой совладать... :cry:
Hasta la vista, baby!

Ваня
Новичок
Новичок
 
Сообщения: 27
Зарегистрирован: 24.06.2005 (Пт) 22:23
Откуда: Московская обл., д. Нестерово

Сообщение Ваня » 23.07.2005 (Сб) 21:07

Цитата:

Если форма в данный момент не загружена ты не сможешь прочитать ничего из этой формы (значения переменных, свойств, контролов...)!!!


Хм... А-ну ка, просветите меня, а что тогда такое вирусы с точки зрения программиста, как программа?
Я хватанул в прошлом году маленький такой файлик, несколько килобайт, так после него даже NortonAntivirus ногами задрыгал и сказал что "Hasta la Vista...", .......................


Если у тебя есть класс Form1 и класс Form2 и при этом нет экзэмпляра Form2 (есть только написанный класс), то ты не сможешь прочитать значения свойств Form2 не создав его экземпляр! А если создать экзэмпляр и сразу же считать значение какого-либо его свойства, то его значение будет равно значению по умолчанию(т.е. то, которое ты задал при написании программы.)

baha76
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 168
Зарегистрирован: 07.01.2004 (Ср) 10:59
Откуда: Ташкент

Сообщение baha76 » 07.10.2005 (Пт) 12:01

Приветствую всех!
Лучше поздно, чем никогда. :)
Я в свое время писал скринсейвер. Помимо основной формы есть форма настроек, значения которых сохранял в реестре. При запуске основной формы все значения считывал ест-но из реестра.
Вот одного не пойму, зачем автору нужно было запускать форму по таймеру? Ведь виндовс сам запускает скринсейвер автоматом, при условии если файл имеет расширение .scr и лежит в System32.

Терминатор
Продвинутый пользователь
Продвинутый пользователь
Аватара пользователя
 
Сообщения: 164
Зарегистрирован: 06.01.2005 (Чт) 12:57
Откуда: Москва

Сообщение Терминатор » 07.10.2005 (Пт) 18:39

baha76 писал(а):При запуске основной формы все значения считывал ест-но из реестра.
Вот одного не пойму, зачем автору нужно было запускать форму по таймеру? Ведь виндовс сам запускает скринсейвер автоматом, при условии если файл имеет расширение .scr и лежит в System32.

Я хотел создать многофункциональный скрин. 8)
Есть такая программка - 1FstSecurityCenterPro v4.2, вот мне захотелось иметь свою такую. Если интересно, посмотри её на сайте разработчика, а я могу выслать тебе лицензионный ключь к ней.
Hasta la vista, baby!

baha76
Продвинутый пользователь
Продвинутый пользователь
 
Сообщения: 168
Зарегистрирован: 07.01.2004 (Ср) 10:59
Откуда: Ташкент

Сообщение baha76 » 10.10.2005 (Пн) 12:04

Привет, Терминатор!
Я посмотрел программку Секьюрити Центр.
Если ты считаешь себя непрофессионалом, то не советую замахиваться так высоко. Лучше подниматься по ступени сложности. Ты сначала создай простой хранитель экрана и добейся, чтоб она четко работала. Потом можно добавлять в нее функции усложняя ее.

А ведь народ дело говорит. Настройки нужно хранить на диске (реестр, текстовой файл и прочее). Закрыв главную форму ты потеряешь значения всех переменных. А что касается вирусов, так большинство сама себя записывает на винт и сама автоматом запускается. Я в этом деле не эксперт конечно. :oops:


Вернуться в Visual Basic .NET

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 59

    TopList  
cron