Hej! Hej Jag tror mitt exempel i filarean på hur man använder Add kanske kan vara till hjälp: Hej, Hej Ytterligare lite tips. detta lilla program kanske kan vara till hjälp... Hej. Man skall inte använda OO för att använda det, man skall använda OO för att det blir lättare/effektivare/bättre programmering. Tack Niklas , du läste mig exakt, det var så jag menade. Hej. Vad är OO, eller OOP som ni snackar om!?? OO står för objektorienterad Så det är alltså det jag hade tänkt från början, med classmoduler som jag återskapar vid varje ny ruta på formen med egna inställningar ? Nja... ska du använda dig av OOP bör du ha en fullständig sådan inriktning från början, inte bara lägga till några klasser. Det är svårt att vidmakthålla en OO-inställning under hela utvecklingen av ett program i VB.Går det skapa nya objekt på en form med en classmodul?
Jag håller på med ett spel som behöver ha många picturebox-rutor på en form... det enklaste sättet jag kunde komma på att göra detta vore om man hade en classmodul som skapade en ny picturebox, dvs. varje gång jag skapade ett nytt object (classmodul i "programkörningskod") skulle en ny picturebox skapas på formen... På så sätt skulle jag kunna "döpa" mina classmoduler och som jag ser det hålla ordning på dem. Men jag har inte lyckats med att skapa ett object på en form med "classmodul-kod". Går detta, och i sånna fall hur?
Tack - EllvinoSv: Går det skapa nya objekt på en form med en classmodul?
Krångla inte till det med ClassModuler !
Gör så här Döp den första PictureBoxen och sätt index till 0
Nu kan du ladda hur många som helst med Load MyPicBox(1) osv.
På samma sätt kan du ta bort dem med Unload.
Sen skall du tänka efter om du inte kan använda en Image istället.
tycker
SvenSv: Går det skapa nya objekt på en form med en classmodul?
Programarkivet:52Sv: Går det skapa nya objekt på en form med en classmodul?
Håller med Sven. Enklast att hantera dynamiskt antal controller i VB är med Load MyPicBox(1) osv. Tänk på att positionera (.Left & .Top) de nya kontroll instanserna samt att .Visible är False.
Mvh
MikaelSv: Går det skapa nya objekt på en form med en classmodul?
>Tänk på att positionera (.Left & .Top)
Ännu bättre använd Move metoden istället.
/SvenSv: Går det skapa nya objekt på en form med en classmodul?
Programarkivet:Rutnät
eller så detta som jag arbetar lite på nu...kan förklara koden lite bättre på denna om du är intresserad av att vet hur jag gjort.
Programarkivet:Square Paint [Ändrat 2002-12-11]Sv: Går det skapa nya objekt på en form med en classmodul?
>>Krångla inte till det med ClassModuler !
Vilket svar!
Varför skall man inte försöka använda sig av den lilla gnutta OOP som ändå VB stödjer?
//freddaSv: Går det skapa nya objekt på en form med en classmodul?
/Niklas JanssonSv: Går det skapa nya objekt på en form med en classmodul?
Tack för kloka människor.
/SvenSv: Går det skapa nya objekt på en form med en classmodul?
Niklas:
Sant. Och det blir det oftast. Om man lär sig behärska det.
//freddaSv: Går det skapa nya objekt på en form med en classmodul?
Finns det i VB standard edition, som jag har eller är det något trepartstillverkat eller endast finns i enterprise??
//EllvinoSv: Går det skapa nya objekt på en form med en classmodul?
P står för programmering.
OOP är ett synsätt på programmering, där man inte ser programmet som en uppsättning funktioner som gör saker, utan som en mängd objekt som man manipulerar.
Klasser är dessa objekt, och skall bara användas som sådana.
/Niklas JanssonSv: Går det skapa nya objekt på en form med en classmodul?
//EllvinoSv: Går det skapa nya objekt på en form med en classmodul?
Metoden du hade tänkt att använda fungerar inte på ett OO-sätt heller om du inte har en vettig miljö runt dem.
Själva principen hade annars varit tvunget att se ut något sånt här:
Du skapar en klass Object, som har en medlem av klassen Shape.
Sedan sätter du antingen egenskapen Parent hos din Shape till en form, typ
Set shp.Parent = Form1
Fast du får Form1 som argument.
Jag e inte säker på om det funkar (Parent kanske är read-only).
En annan metod hade varit att du får en form och bara ritar ut innehållet på den.
I vilket fall som helst skulle jag inte löst ursprungsproblemet på det sättet. Flera pictureboxar är tungt, och jag vill inte gärna hålla på och krångla med dem. I så fall väljer jag hellre att rita direkt på ett grafiskt objekt (t.ex. en picturebox)
/Niklas Jansson