Permalänk
Medlem

Visual Basic Hjälp!

Tjena! Jag sitter och skapar ett program i VB och har glömt i princip allt jag kunnat (Var van med någon version från 1998 och har nu den senaste versionen av Visual Studio.)
Såhär ser programmet just nu ut:

Målet är att få in 68 bilder i listan till vänster, i vilken man ska kunna dra och släppa varje bild i rutorna till höger.
Är det någon som skulle kunna hjälpa mig med kod eller idéer så skulle det uppskattas.
Försöker inte riktigt lära mig utan måste bara få det gjort av praktiska skäl, tack så mycket!

Permalänk
Medlem

Någon snälla?

Bump noterad. Det är inte tillåtet att bumpa en tråd!
Permalänk

Det är fult att bumpa, och inte tillåtet heller.

Nu har jag inte koll på .Net men i gamla VB6 skulle man kanske kunna använda en ListView med View-egenskapen satt till lvwIcon, med tanke på att .Net bara är ett extra lager borde det nog gå att göra samma där. Eller 68 stycken Image-komponenter som du placerar i vita rutan och placerar i en grid (loopa_alla_och_sätta {.Left = (kolumn - 1) * bild_storlek, .Top = (rad - 1) * bild_storlek}). .Net ska oxå ha en Scrollable Panel om du inte vill lägga till en scrollbar själv till gridden (http://www.java2s.com/Code/CSharp/GUI-Windows-Form/Scrollable...).

Permalänk
Medlem

Okej, förlåt, man får alltså inte posta skärmdumpar?
Tack, jag ska titta närmare på det när jag kommer hem!

Permalänk

Bumpning = http://sv.wikipedia.org/wiki/Bumpning

Skärmdumpar är ngt helt annat och får gärna användas.

Permalänk
Skrivet av careface:

Okej, förlåt, man får alltså inte posta skärmdumpar?
Tack, jag ska titta närmare på det när jag kommer hem!

Jo, skärmdumpar men inte bumpar

Läs reglerna, särskilt §4
http://www.sweclockers.com/forum/regler

Visa signatur

Asus Striker II Extreme / XFX Geforce GTX 280 / Q9450 @ 3.6GHz/ TRUE Noctua 120/ 4x1GB Corsair TWIN3X2048-1333C9DHX / X25-M G2 80gb Velociraptor / Win 7 Ultimate x64/ Antec P190

MovieDatabase

Permalänk
Medlem

Oj! jag ber om ursäkt! Men veta skall ni att jag inte använde det i det syfte som beskrivs! Ville bara att någon skulle reagera. men nu vet jag ju att det inte är tillåtet så ingen skada skedd, eller?

Permalänk
Hedersmedlem

Bara det inte upprebas. Dvs att bumpa trådar.

Visa signatur

Samlingstråd om SSD/HDD | PC:Intel i7-2600K | Asus Gene-Z | 8GB | 1x520,240GB+2xIntelG2 80gb | ATI 6970 | Silverstone ft03 svart | Seasonic x460FL | Nec 3090wqxi Server:IntelAtom, 1GB, 4TB,Ubuntu | Kamera:Canon 550D,18-135 MySpace

Permalänk
Medlem

Kommer inte hända igen!
Jag tog bort listview funktionen och lade dit 68 pictureboxes istället, det fungerar nu och jag har kommit vidare med programmet, jag har fått alla 68 bilder på den vänstra sidan färdiga, dvs att det nu är möjligt att dra alla bilder en och en till rutorna till höger. Jag håller nu på att göra en spara knapp som ska vara till för att ta en bild av de 25 slutgiltiga bilder man dragit från den högra sidan till den vänstra. Jag måste då spara endast den delen av programmet där bilderna jag vill spara ligger(Just nu är det en skärmbump av hela skärmen) och sedan skapa en mapp på skrivbordet att lägga dom i (Som ska fungera på alla datorer oavsett OS, endast Windows.)
Finns det ett enkelt sätt att göra detta? Just nu blir det alltså en PrintScreen som jag kan lägga vart jag vill men bara på min dator, eftersom att alla inte har samma sökvägar som jag har och alla heter ju inte heller David Karlsson! ^^

Tack på förhand!

Permalänk

För att få fram sökvägen till skrivbordet använder man i VB6 API-anropet SHGetSpecialFolderLocation så kanske finns det ngn funktion som heter så i .Net...

Googlade på det och hittade...
http://msdn.microsoft.com/en-us/library/14tx8hby(vs.71).aspx

Permalänk
Medlem

Ska genast testas, tack så mycket!
Edit: Hur vet man vilken specifik sökväg som är skrivbordet då?

Permalänk

Deklaration in VB.Net är
Public Shared Function GetFolderPath( _
ByVal folder As Environment.SpecialFolder _
) As String

Det går att klicka på "Envronment.SpecialFolder" för att få fram möjliga värden där (http://msdn.microsoft.com/en-us/library/system.environment.sp...).

Jag antar därför att...
folder$ = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)
...ska fungera

Permalänk
Medlem

Okej, tack så mycket.
Det andra då? Screenshot problemet?

Permalänk

I VB6 fanns ett <Form>.PrintForm anrop så det är ett google-tips, googlade "printform .net" och hittade bl.a....
http://www.knowdotnet.com/articles/printform.html
...jag antar här att det går att spara ned Graphics-objektet till disk istället för att skicka den till skrivaren.

Permalänk
Medlem

Ska försöka rota runt lite i den! Tack.
Dock får jag inte Mapp Deklarationen att fungera!

Permalänk

Du ska inte deklarera GetFolderPath (som du behövde göra i VB6 när man anropade en dll-fil), den ska finnas redan där, deklarationen jag listade var bara till för att visa hur anropet skulle se ut (att där finns en parameter, och att den parametern var av ett numeriskt värde, där Environment.SpecialFolder enum listade alla möjliga värden. Jag tror alltså att koden...

folder$ = Environment.GetFolderPath(Environment.SpecialFolder.Desktop)

...ska fungera av sig själv (om inte nu inte måse importera den funktionen på ngt sätt för att visa kompilatorn var den finns, jag skulle gissa att man gör det i början av koden, ngt i stil med "import Environment").

Permalänk
Medlem

Okej, så när man har "Import.Environment.Desktop (Något liknande, vet att det inte är så, men ta det som exempel för du förstår vad jag menar.)
Så hur ska jag använda det i sparfilen?
b.save("Desktop\myImage.Jpeg", Imaging.ImageFormat.Jpeg) ?

Permalänk
Medlem

Okej, nu har jag tänkt såhär:
Jag lägger alla pictureboxes vars innehåll skall sparas på bild i en enda stor picturebox för att sedan kunna spara den storas innehåll när man dragit de valda bilderna in i denne. Är detta enklare eller svårare? Ingenting verkar fungera för mig! Visserligen endast på grund av okunnighet men nog så irriterande ändå.
Sedan undrar jag även om det är mojligt att lägga alla bilder i någon form av ruta med scroll-funktion och ändå lyckas spara en bild med alla valda bilderna på bilden. (Alltså inte printscreen utan en riktig sparfunktion.) Jag tänkte eftersom att jag använder mig utav en stor Picturebox.
Om jag har alla små bilder i den stora, sedan sparar den storas innehåll på bild så borde ju alla komma med på bild, även de som inte är i bild när man sparar. Eller?)