Diskuze: Image and button click
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 27 zpráv z 27.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Ale mně se ten obrázek neukáže bez cesty ne??? Srry jsem začátečník...
Jako myslím to tak, že když kliknu na ten button, tak se mi třeba oběví duha a potom zmizí!!
Aku cestu mysliš?
Neřeš... Prostě tak: Jako myslím to tak, že když kliknu na ten button, tak se mi třeba oběví duha a potom zmizí!
A v čem to děláš WF : WPF ? Prostě po kliknutí na tlačítko
vytvoříš třeba picturebox s cestou k obrazku
Prostě máš picturebox nebo to vykreslíš na canvas...záleží v čem to
děláš.
Dělám to v c# a v programu VisualStudio 2017 ...
No to zrovna vědět nemusím...to je jedno.
private void button1_Click(object sender, EventArgs e)
{
PictureBox picturebox = new PictureBox();
picturebox.ImageLocation = @""; //sem dáš cestu k obrázku
picturebox.SizeMode = PictureBoxSizeMode.AutoSize;
this.Controls.Add(picturebox);
}
Jako něco takového myslíš ?
No velikost nastavíš tímto
picturebox.Size = new Size(100, 240);
a když chceš aby se ti obrázek zmenšil tak místo
picturebox.SizeMode = PictureBoxSizeMode.AutoSize;
dáš
picturebox.SizeMode = PictureBoxSizeMode.StretchImage;
a když chceš aby to po chvíli zmizelo na to je několik způsobů.Např
pomocí timeru
a jako mělo by to fungovat, sice tam je pár věcí co by mohli být jinak ,ale
tohle je především jako příklad jen.
PictureBox picturebox = new PictureBox();
Timer timer = new Timer();
private void button1_Click(object sender, EventArgs e)
{
picturebox.ImageLocation = @"";
picturebox.SizeMode = PictureBoxSizeMode.StretchImage;
picturebox.Size = new Size(400, 190);
this.Controls.Add(picturebox);
timer.Interval = 5000; //čas kdy zmizí obrázek
timer.Start();
timer.Tick += Timer_Tick;
}
private void Timer_Tick(object sender, EventArgs e)
{
this.Controls.Remove(picturebox);
this.timer.Stop();
}
Jakože se objeví obrázek a konec ? Zkus prohodit
timer.Start();
timer.Tick += Timer_Tick;
Aby to bylo naopak
timer.Tick += Timer_Tick;
timer.Start();
Stále to nezmizí... Ano přesně tak objeví se a konec!
pošli ten kód co tam máš...ještě mě napadá že by tam mohlo bejt
timer.enabled = true;
Já jsem ten kód ted zkoušel a mě funguje.
Ale vymažeš ho ok? Nechcu aby ho někdo mněl... Protože to je moje
Ok..... Tady je :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MLGClicker_V2
{
public partial class Form1 : Form
{
int cena3 = 1000;
int cena2 = 400;
int couter = 0;
int click = 1;
int cena = 100;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
couter += click;
label1.Text = $"Rainbow: {couter}";
PictureBox picturebox = new PictureBox();
Timer timer = new Timer();
picturebox.ImageLocation = @"D:\YouTube věci\Nahleďáky
atd\Potato.png";
picturebox.SizeMode = PictureBoxSizeMode.AutoSize;
this.Controls.Add(picturebox);
timer.Interval = 100; //čas kdy zmizí obrázek
timer.Tick += timer1_Tick;
timer.Start();
}
private void button2_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 1;
couter -= cena;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = $"Rainbow: {couter}";
}
private void button3_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 2;
couter -= cena2;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void button4_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 4;
couter -= cena3;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void timer1_Tick(object sender, EventArgs e)
{
this.Controls.Remove(pictureBox1);
this.timer1.Stop();
}
}
}
Noo jako máš tam pár věcí jinak než já.
PictureBox picturebox = new PictureBox();
Timer timer = new Timer();
musí bejt mimo event kliknutí
a potom v tom kódu ještě tam vytváříme ten timer a ten timer1_Tick nemá
tam být ta 1 na konci.Nebo tam máš jinej timer ? +
this.Controls.Remove(pictureBox1); zase ta 1 na konci nemá být
Aha? Napis mi to v tom kodu nebo ho zkopiruj a oprav to prosim prosim!! Jinak diky moc za pomoc!! <3
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace MLGClicker_V2
{
public partial class Form1 : Form
{
int cena3 = 1000;
int cena2 = 400;
int couter = 0;
int click = 1;
int cena = 100;
public Form1()
{
InitializeComponent();
}
PictureBox picturebox = new PictureBox();
Timer timer = new Timer();
private void button1_Click(object sender, EventArgs e)
{
couter += click;
label1.Text = $"Rainbow: {couter}";
picturebox.ImageLocation = @"D:\YouTube věci\Nahleďáky atd\Potato.png";
picturebox.SizeMode = PictureBoxSizeMode.AutoSize;
this.Controls.Add(picturebox);
timer.Interval = 1000; //čas kdy zmizí obrázek
timer.Tick += timer1_Tick;
timer.Start();
}
private void button2_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 1;
couter -= cena;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void Form1_Load(object sender, EventArgs e)
{
label1.Text = $"Rainbow: {couter}";
}
private void button3_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 2;
couter -= cena2;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void button4_Click(object sender, EventArgs e)
{
if (couter >= cena)
{
click += 4;
couter -= cena3;
cena *= 2;
label1.Text = $"Rainbow: {couter}";
}
}
private void timer_Tick(object sender, EventArgs e)
{
this.Controls.Remove(picturebox);
this.timer.Stop();
}
}
}
A jak udělám, to abych mněl úplně na začátku nějaké menu? Jako tím myslím když se zapne tá appka, aby tam bylo třeba start atd.
Zobrazeno 27 zpráv z 27.