• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

Таймер как в Сапере

  • Автор темы Guest
  • Дата начала
G

Guest

Кто знает, как это сделать?

Я понимаю, можно на форму нанести timer. А в textBox выводить время выполнения чего-либо. Но это по-детски, несерьезно.

А вот как в Сапере - это круто! :) красиво! :)
 
G

Guest

ой, скоро-скоро!!! :) только эта программа посвещается одному человеку, поэтому я и хочу, чтобы было все офигенно красиво :D

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


А что кроссворды ждете? :)
 
G

Guest

ой, я боюсь вам показывать :) а вдруг вам не понравится, я столько вопросов задаю-задаю!!!

Как вам такое предложение, я скину свой релиз, вы посмотрите, оцените, скажите, что переделать, как модифицировать. И тогда я могу посвятить человеку :D
 
P

Pasha

Скидывай. Только убедись, что этот человек не читает форум :)
 
N

NikSoft

Для: госик
Мы все в нетерпении увидеть кроссворд.
 
G

Guest

Подскажите! Я, наверно, делаю по тупому. В общем, все цифры будут отображаться в три столбика (вспомним сапер. Я для каждого столбика делаю по 10 цифр, т.е. всего получиться 30 (!!!). Но они-то все инициализируются в InitilazeComponent. Наносим на форму таймер. И как мне теперь сделать отображение этих пикчеров? Например, я думала, сделаю так: создам в конструкторе все пикчеры, а потом в timer_Tick буду их рисовать (в циклах), например код:


Код:
for (int i = 0; i<10; i++)
{
// 
// pictureBox3
// 
this.pictureBox3.Cursor = System.Windows.Forms.Cursors.Default;
this.pictureBox3.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox3.Image")));
this.pictureBox3.Location = new System.Drawing.Point(410, 10);
this.pictureBox3.Name = "pictureBox3";
this.pictureBox3.Size = new System.Drawing.Size(13, 22);
this.pictureBox3.TabIndex = 2;
this.pictureBox3.TabStop = false;
// 
// pictureBox4
// 
this.pictureBox4.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox4.Image")));
this.pictureBox4.Location = new System.Drawing.Point(410, 10);
this.pictureBox4.Name = "pictureBox4";
this.pictureBox4.Size = new System.Drawing.Size(13, 22);
this.pictureBox4.TabIndex = 3;
this.pictureBox4.TabStop = false;
}

Но там ошибка на строчках this.pictureBox3.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox3.Image"))); -

The type or namespace name 'resources' could not be found (are you missing a using directive or an assembly reference?)

Я тупик, тупик, тупик, тупик.... :)
 
P

Pasha

Если по быстрому, то примерно так:
1. Создай в конструкторе Image[] numberImages на 10 картинок, загрузи их (из файлов, или из ресурсов).
2. По тику таймера делай this.pictureBoxX.Image = numberImages[цифра];.

Если хочется совсем ровно - создай свой UserControl, который в своем конструкторе будет загружать картинки. И по смене Value подменять их.

А сейчас падает потому что не хватает строчки, которая стоит в InitializeComponent();
System.Resources.ResourceManager resources = new System.Resources.ResourceManager(typeof(CompleteForm));

UPD: Вот, смотри пример в аттаче :) (его надо доработать напильником, и, в идеале, сделать через одну картинку с Image.SelectActiveFrame)
 

Вложения

  • MinerTimer.zip
    43,4 КБ · Просмотры: 182
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!