Diskuze: Visual Basic - Posun obrázku v PictureBoxu
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 22 zpráv z 22.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Test znalostí C# .NET online, jsme si ověřili nabyté zkušenosti z kurzu.
Chceš jen nějaký nápad co k tomu budeš asi potřebovat nebo i kód?
public partial class Form1 : Form
{
private Image image;
private Point point;
private Point pointOnClickDown;
/// <summary>
/// indicates if image is rendered in realtime during shift
/// </summary>
bool realTimeShift = true;
bool isMousePressed;
public Form1()
{
InitializeComponent();
// panel which is used to draw image
Panel p = new Panel()
{
Width = 300,
Height = 300
};
// see http://stackoverflow.com/a/15815254
// prevents flickering
// its done by this way, because its access modification is protected
typeof(Panel).InvokeMember("DoubleBuffered",
BindingFlags.SetProperty | BindingFlags.Instance | BindingFlags.NonPublic,
null, p, new object[] { true });
this.Controls.Add(p);
image = Image.FromFile("Untitled.png");
point = Point.Empty;
// draw image
p.Paint += (o, e) =>
{
Graphics g = e.Graphics;
//g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.AssumeLinear;
g.DrawImage(image, point);
};
p.MouseDown += (o, e) =>
{
// store starting position
pointOnClickDown = e.Location;
isMousePressed = true;
};
p.MouseUp += (o, e) =>
{
if (!realTimeShift)
{
// calculates difference between two points
Point shift = new Point(e.Location.X - pointOnClickDown.X, e.Location.Y - pointOnClickDown.Y);
// refresh position of image - shift it with some direction
point.Offset(shift);
// force refresh on panel
p.Invalidate();
}
isMousePressed = false;
};
p.MouseMove += (o, e) =>
{
if (realTimeShift && isMousePressed)
{
// calculates difference between two points
Point shift = new Point(e.Location.X - pointOnClickDown.X, e.Location.Y - pointOnClickDown.Y);
// refresh position of image - shift it with some direction
point.Offset(shift);
// store starting position
pointOnClickDown = e.Location;
// force refresh on panel
p.Invalidate();
}
};
}
}
Zjevně nevíš nic o práci s WinFormi, zkus se kouknout na zdejší
návody, pak by ti to mělo být jasný kam to dát
http://www.itnetwork.cz/…indows-forms
Ah, nevšiml sem si toho názvu... Si to dej do nějakého konverteru nebo
popros Michal Žůrek - misaz, aby ti to přepsal 
konvertor (dneska výjimečně funguje, to se mi už dlouho nestalo):
Public Partial Class Form1
Inherits Form
Private image As Image
Private point As Point
Private pointOnClickDown As Point
''' <summary>
''' indicates if image is rendered in realtime during shift
''' </summary>
Private realTimeShift As Boolean = True
Private isMousePressed As Boolean
Public Sub New()
InitializeComponent()
' panel which is used to draw image
Dim p As New Panel() With { _
Key .Width = 300, _
Key .Height = 300 _
}
' see http://stackoverflow.com/a/15815254
' prevents flickering
' its done by this way, because its access modification is protected
GetType(Panel).InvokeMember("DoubleBuffered", BindingFlags.SetProperty Or BindingFlags.Instance Or BindingFlags.NonPublic, Nothing, p, New Object() {True})
Me.Controls.Add(p)
image = Image.FromFile("Untitled.png")
point = Point.Empty
' draw image
p.Paint += Function(o, e)
Dim g As Graphics = e.Graphics
'g.CompositingQuality = System.Drawing.Drawing2D.CompositingQuality.AssumeLinear;
g.DrawImage(image, point)
End Function
p.MouseDown += Function(o, e)
' store starting position
pointOnClickDown = e.Location
isMousePressed = True
End Function
p.MouseUp += Function(o, e)
If Not realTimeShift Then
' calculates difference between two points
Dim shift As New Point(e.Location.X - pointOnClickDown.X, e.Location.Y - pointOnClickDown.Y)
' refresh position of image - shift it with some direction
point.Offset(shift)
' force refresh on panel
p.Invalidate()
End If
isMousePressed = False
End Function
p.MouseMove += Function(o, e)
If realTimeShift AndAlso isMousePressed Then
' calculates difference between two points
Dim shift As New Point(e.Location.X - pointOnClickDown.X, e.Location.Y - pointOnClickDown.Y)
' refresh position of image - shift it with some direction
point.Offset(shift)
' store starting position
pointOnClickDown = e.Location
' force refresh on panel
p.Invalidate()
End If
End Function
End Sub
End Class
Uvědom si, že jsi napsal na fórum, kde si radíme, neděláme tady práci za druhé. Kluci ti to celé napsali a ty si to ani nedokážeš vložit do projektu a ještě si stěžuješ? Jestli si chceš nechat napsat aplikaci, tak si zadej zakázku - http://www.itnetwork.cz/…-v-it/submit a zaplať si za to. Jestli chceš pomoct, tak ti pomůžeme rádi, ale budeš se muset snažit. A nás nezajímá že jsi grafik, to je jako by mi zedník zadarmo něco opravil protože sem programátor? Fakt se zamysli nad tím co pro tebe tady udělali a co jsi pro ně udělal ty.
Dostal jsi kompletní řešení ve dvou programovacích jazycích, třeba nějaké "děkuju"?
Kdybys klikl na odpovědět, tak by si toho třeba někdo všiml. Pořád to nemáš hotové?
nn nemám to hotové, proste to nejde
Zobrazeno 22 zpráv z 22.