Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-01 21:18:18 - Torgny Söderström, i forum vb.net, Tråden har 7 Kommentarer och lästs av 727 personer

Jag håller på att planera ett nytt projekt och funderar örver olika lösningar.

Jag vet hur man skapar nya objekt dynamiskt men om jag skapat en knapp hur fångar jag den knappens klick händelse eller någon annan händelse?

Tack från
Torgny


Svara

Sv: När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-02 12:38:57 - Marcus Gus

C# men borde inte vara några problem...


<code>

//När du skapar knappen dynamiskt lägger du till något för att hantera clickhändelsen
this.MyNewShinyButton.Click += new System.EventHandler(this.ShinyButton_Click);

//För att särskilja vilken du tryckt på kan man göra på flera sätt, tex sätta namn eller tag-property
this.MyNewShinyButton.Tag = "Något kul";


//Metoden som tar hand om eventet
private void ShinyButton_Click(object sender, System.EventArgs e)
{

if (((button)sender).Tag == "Något kul")
{
messaegebox.Show("HURRA!!!" + Envirmoment.Newline + "Någon tryckte på min dynamisk knapp");
}
else
{
messaegebox.Show("SUCK!" + Envirmoment.Newline + "Ingen tryckte på min dynamisk knapp... :-(");
}
}
</code>


Svara

Sv:När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-05 20:53:56 - Torgny Söderström

Tack för svaret men jag hänger inte med alls.

Är detta visualbasic dotnet kod?
Har jag råkat skriva min fråga under fel forum?

mvh
Torgny


Svara

Sv: När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-06 08:26:24 - Marcus Gus

<b>Är detta visualbasic dotnet kod?</b>
Nej, som det står högst upp är detr C#, men det borde inte spela någon roll. Syntaxen är ju "liknande" och skall man hålla på med .Net bör man kunna läsa båda språken i stort sett obehindrat.

<b>Har jag råkat skriva min fråga under fel forum? </b>
Nej. Men jag orkar/vill inte/hade inte tid med att skriva VB.Net kod utan det jag ville få fram framgår av koden och dess komentarer. Det du behöver göra är ju att knyta dina knappar till en metod som hanterar ett event, tex Click.


Svara

Sv: När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-06 18:21:57 - Robert Edström

'Först får du göra en händelsehanterare som ska hantera händelsen:
Sub Handlern(ByVal sender as object, byval e as eventargs)
'Klickhantering här!
End Sub

'Sedan när du skapar knappen använder du nyckelordet AddHandler:
AddHandler Knappen.Click, AddressOf Handlern


Svara

Sv:När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-08 07:31:20 - Torgny Söderström

Tack för svaren

Jag ska sätta mej till häljen och prova.
Jag för söker nämmerligen lära mej vb.net skälv va böcker på häljerna och har hållit på ett halv år.
En fråga till Marcus, varför bör jag lära mej #C också?

Robert jag har inte testat ditt svar men jag undrar, ska jag skapa en rutin för varje ev knapp som ska fånga händelsen från knappen. Jag skulle vilja ha en som som listarut vilken knapp som hadde en klickhändelse.

Tacksam för ytterligare förslag också

MVH
Torgny


Svara

Sv: När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-08 10:43:11 - Marcus Gus

<b>En fråga till Marcus, varför bör jag lära mej #C också?</b>

Nä, du behöver inte lära dig MEN det kommer att underlätta ENORMT om du kan läsa både VB.Net och C# kod. Båda bygger ju på samma framework och det är ju egentligen det man skall lära sig, sedan blir ju syntaxen för språk relativt lika varandra och det underlättar omman kan "sno" ide'er, kod och förstå hur ramverket fungerar om man kan läsa annan kod.

Då skriver jag istället hur du skall göra:
Du måste skapa en funktion som tar hand om knapptryckningar (*1), dessa har två inparametrar av typen object ochj System.EventArgs och "returnerar" alltid void (Sub i VB). I denna funktionen tar du hand om det som skall göras när du trycker på en knapp. När du skapar en knapp så måste du på något sätt tala om för den vad som skall hända när du trycker på den, det gör du genom att lägga till en EventHandler på det du vill skall ske, i ditt fall Click eventet(*2). Eftersom du nu har skapat en knapp, talat om för den vilken metod som skall användas när man trycker på den så kommer den också att anropas när man trycker. Alla knappar du skapr dynamiskt kan gå mot samma metod.


*1. skapa ett tomt formulär, lägg till en knapp och dubbeklicka på den och TITA PÅ HUR funktionen ser ut...
*2. C# koden för att lägga till en eventhandler på click ser ut så här Knappen.Click += new System.EventHandler(Handlern); VB koden har Robert skrivit ovan: AddHandler Knappen.Click, AddressOf Handlern

Vb.Net, C# och ramverket är lite som skruvmejslar och skruvar. Kan man skruva ur en skruv med en vanlig skruvmejsel(VB.Net) så bör man också kunna skruva ur en med en stjärnskruvmejsel(C#), även om det är skillnad så är det grundläggande så pass likt så man bör klara av det. Har suttit med på arbetsintervjuer och frågat sökande saker och den som säger att han/hon enbart kan VB.Net och inte ramverket är de direkt ointressanta. Söker man en C#-utvecklare och en sökande säger "-Har aldrig jobbat med det, men kan ramverket jäckligt bra" så är den personen högintressant. Kan man bara ramverket kan man relativt lätt byta språk, visst sitter man och skriver fel första veckan när man byter men sen sitter det. Likaså om jag skulle titta på arbetsannonser så är annonser som skriver "Söker duktig VB.Net..." eller "Söker duktig C#..." direkt ointressanta, om de inte kan skriva annonser ordentligt varför skulle jag då vilja jobba hos dem? ja ja, massa dravel från mig, inget att bry sig om... ;-)




Svara

Sv:När man skapat en eller flera knappar via kod (Dynamiskt)

Postades av 2006-03-13 08:08:35 - Torgny Söderström

Hej
Jag har inte hunnit titta på det i praktiken men jag har hunnit titta och fundera över koden. Jag tror jag förstår den nu.

Tack för att ni hjälpt mej lösa detta
MVH
Totgny


Svara

Nyligen

  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 725
27 958
271 751
507
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies