Курсы по программированию

Формула программиста

основатель — Волосатов Евгений Витольдович
Поздравляю с 1 сентября! Система начисления Байтов работает.

Демо софт / Менеджер паролей

  • На этом уроке мы будем работать с буфером обмена и открывать сайты в браузере по умолчанию.

    Задание:
    Создать программу для хранения паролей.
  • Дата отправки отчёта: 7 декабря 2015 г.
  • Задание выполнено: за 2 час. 00 мин.
  • Чему научился: использовать буфер обмена
  • Что было сложным: найти ошибку, которая вылетала при работе с буфером обмена
  • Комментарии: выкидывало ошибку на строчке Clipboard.SetText();
    долго искал проблему и чисто случайно наткнулся в интернете ,что буфер обмена может быть блокирован сторонней программой или занят ей, не вдавался в подробности.
    этой программой был Download Master.
    Отключил и сразу всё заработало!:)
    потом еще доработаю программу!)
    еще вопрос, как закрыть форму со Входом, чтобы не закрывалась форма с Паролями?
  • Оценка видео-уроку:
Отчёт от 8118 за Демо софт / Менеджер паролей


Отчёт от 8118 за Демо софт / Менеджер паролей




Оцени работу

 
Сохранить страницу:

459. --
Сергей Сергеевич
Сергей Сергеевич
ответить
→  1    # Прикладные / Менеджер паролей / 2015-12-07 12:58

Можно просто скрыть первую форму this.Hide(); и во второй форме вызвать события
private void Form2_FormClosing( object sender, FormClosingEventArgs e )
{
        Application.Exit();
  }
Можно еще так в Program.cs дописать
static void Main()
        {
           
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault( false );
            Application.Run( new Form1() ); //При запуске откроется первая форма
            Application.Run( new Form2() ); //После обработки пароля первая закроется открывается вторая форма

        }
А в главной форме сделать проверку на пароль
int pass = 12345;
private void button1_Click( object sender, EventArgs e )
        {
            if(textBox1.Text == pass.ToString())
            {
               
                if(textBox1.Text == pass.ToString())
                {
                    this.Close();
                }
                else
                {
                    label1.Text = "Не верный пароль";
                   
                }
               
               
            }
        }
И во второй форме не забываем так же сделать
private void Form2_FormClosing( object sender, FormClosingEventArgs e )
{
        Application.Exit();
  }


24. --
Олюшка
Олюшка
ответить
→  1    # Прикладные / Менеджер паролей / 2015-12-07 19:11

Юрий, отличные знания, рада что все исправил и уверена что ты в дальнейшем еще улучшишь и будешь использовать с удовольствием и в помощь себе!!!


  • Отчёт оценивали:
    Посетитель+1  

Начинаем практику по языку C#





Если вы пришли без приглашения -
введите тысяча двадцать четыре (цифрами).
Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: object sender , TableLayoutPanel , "Запасной карман" Teg . Веселый урок
Трудности: Попытка не пользоваться object sender или if-else



Научился: Отличный урок. Научился открывать ссылки в браузере, копировать текст в буфер, выделять текст... Сделал как в видео уроке, но решил доработать. Захотел сделать не 3 строки в tableLayoutPanel, как в видео примере, а поле с выпадающим списком....Так же, чтобы поля логин и пароль были в единичном экземпляре и менялись в зависимости от выбора поля списка...Ну и до кучи, чтобы можно было прямо из формы дописывать новые значения в список... 1) Решил воспользоваться элементом ComboBox (заодно и разобраться как он работает). Добавил его вместо Label Link. Поле "логин" оставил как в видео примере. Поле пароль сделал звездочками TextBox (так больше нравится, чем кнопка) 2) Далее занялся вопросом наполнения списка. Оказалось не все так просто, как я думал))) Добавил в него предопределнные значения и понял, что мне это ничего не дает...Ведь в нем получится хранить имя сайт...А где тогда будут логин и пароль? Отложил вопрос и решил для начала добавить программно список сайтов. 3) На форме сделал несколько полей (название сайта, логин, пароль и кнопку “добавить”). Пометил их так же в tableLayoutPanel. Сделал CheckBox, решив от его состояния показывать поля добавления или нет... Пришлось поковыряться с привязками, чтобы отображение было нормальным. Так же долго возился с центрированием формы (если есть доп. меню или оно скрывается). В итоге погуглил и как результат смог написать функцию, которая определяет центральное положение формы с учетом изменения ее размеров в зависимости от того показано ли доп. меню или нет. 4) Когда все было готово и добавление в список наладилось, я заметил что, закрыв программу, список открывался пустой...Погуглив понял, что необходимо хранить данные в файле.. Сделал текстовый файл в папке с проектом. Написал функцию записи в файл при нажатии кнопки “добавить”. А при загрузке формы функцию которая считывает данный файл, парсит строки и наполняет список... В общем проделал для себя огромную работу по прокачиванию навыков..Почти все вышеописанное делал впервые...Было очень интересно. Затянул меня С# )))
Трудности: Искать в слепую методы и варианты решения поставленных перед собой задач.