Toon posts:

[VB.NET] Visual basic 2010 express haalt code weg

Pagina: 1
Acties:

Onderwerpen


  • robojan
  • Registratie: Maart 2009
  • Laatst online: 18-05 14:14
Ik heb een vreemd probleem bij een stuk code van mij. De code werkt over het algemeen goed en VB geeft geen warnings of errors, zelfs geen messages, maar na 1 of 2 keer debuggen heeft visual basic een halve regel weggehaald, waardoor de code stopt met werken.

Het gaat over deze code:
Visual Basic .NET:
1
2
3
Private Sub Place_holder_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Place_holder.MouseDown
        logbox.AppendText("Click Mouse: X=" + e.X.ToString + " Y=" + e.Y.ToString + " Button=" + e.Button.ToString + " Slot= " + botfunctions.MouseclickInObject(e).ToString + Environment.NewLine)
End Sub

Na een paar keer debuggen haalt vb "Handles Place_holder.MouseDown" weg. Het is dan logisch dat hij niet meer werkt, want de functie wordt niet meer opgeroepen. Place_holder is een TransparentPanel. Die apart wordt aangemaakt in de form_load functie met deze code:
Visual Basic .NET:
1
2
3
4
5
6
7
8
9
    Dim WithEvents Place_holder As TransparentPanel.TransparentPanel = New TransparentPanel.TransparentPanel

    Private Sub Programm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Place_holder.Location = New System.Drawing.Point(381, 3)
        Place_holder.Size = New System.Drawing.Size(457, 271)
        Me.Controls.Add(Place_holder)
        Place_holder.BringToFront()
        'nog meer irrelevante code
End Sub


TransparentPanel wordt weer opgeroepen uit een aparte dll geschreven in C# van deze link http://www.fsmpi.uni-bayreuth.de/~dun3/archives/creating-a-transparent-panel-in-net/108.html

Mijn vraag is nu, wat zorgt er voor dat Visual basic de code weghaalt en nog belangrijker hoe kan ik het oplossen.

Acties:
  • 0Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 26-05 14:17

gorgi_19

Kruimeltjes zijn weer op :9

De constructie je hanteert is niet echt gebruikelijk. Gebruik eens de constructie met een Addhandler (en in de code) ipv de Handles clause.

Ik vermoed dat je handlers wil toevoegen op objecten die feitelijk nog helemaal niet bestaan.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0Henk 'm!

  • robojan
  • Registratie: Maart 2009
  • Laatst online: 18-05 14:14
Bedankt, dat heeft het verholpen.

Wat is nou precies het verschil tussen Handles of addhandler?

Acties:
  • 0Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 26-05 14:17

gorgi_19

Kruimeltjes zijn weer op :9

robojan schreef op zondag 26 juni 2011 @ 13:49:
Bedankt, dat heeft het verholpen.

Wat is nou precies het verschil tussen Handles of addhandler?
In effect niets, maar je liep bepaalde objecten (inclusief bijbehorende handlers) te overschrijven.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Nu online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

Dan nog mag de IDE in feite natuurlijk niet in je eigen code gaan rommelen tenzij je in "generated code" bestanden zit te wroeten. Is SP1 en evt. andere updates wel geïnstalleerd?

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Roses are red Violets are blue, Unexpected ‘{‘ on line 32.

Over mij


  • BertS
  • Registratie: September 2004
  • Laatst online: 26-05 09:21
De Handles verdwijnt in VB meestal bij knippen/plakken, ben je daar soms mee bezig geweest? (knippen van de declaratie van place_holder)

  • NickThissen
  • Registratie: November 2007
  • Laatst online: 23-05 20:03
BertS schreef op maandag 27 juni 2011 @ 08:23:
De Handles verdwijnt in VB meestal bij knippen/plakken, ben je daar soms mee bezig geweest? (knippen van de declaratie van place_holder)
Hier dacht ik ook meteen aan maar voor zover ik weet is dat alleen voor controls die tijdens design-time fysiek op je form zitten en als je in de form designer gaat zitten knippen/plakken. Het idee hierachter heb ik nooit logisch gevonden maar dat terzijde. Ik kan me niet voorstellen dat het knippen/plakken van een code declaratie zoals hier de handles clause weg zal halen. Heb het net even geprobeerd en krijg het inderdaad niet voor elkaar, knip de declaratie weg dan krijg je gewoon een error op je Handles clause, plak je em weer terug dan is alles weer prima.

Mijn iRacing profiel


  • Armageddon_2k
  • Registratie: September 2002
  • Laatst online: 24-05 09:17

Armageddon_2k

Trotse eigenaar: Yamaha R6

Stiekum een dispose ergens zitten?
Ik heb zelf wel meegemaakt dat complete images uit mn resources werden weggegooid, ook door een misplaatste Dispose() van een collega :X
Pagina: 1


Tweakers maakt gebruik van cookies

Tweakers plaatst functionele en analytische cookies voor het functioneren van de website en het verbeteren van de website-ervaring. Deze cookies zijn noodzakelijk. Om op Tweakers relevantere advertenties te tonen en om ingesloten content van derden te tonen (bijvoorbeeld video's), vragen we je toestemming. Via ingesloten content kunnen derde partijen diensten leveren en verbeteren, bezoekersstatistieken bijhouden, gepersonaliseerde content tonen, gerichte advertenties tonen en gebruikersprofielen opbouwen. Hiervoor worden apparaatgegevens, IP-adres, geolocatie en surfgedrag vastgelegd.

Meer informatie vind je in ons cookiebeleid.

Sluiten

Toestemming beheren

Hieronder kun je per doeleinde of partij toestemming geven of intrekken. Meer informatie vind je in ons cookiebeleid.

Functioneel en analytisch

Deze cookies zijn noodzakelijk voor het functioneren van de website en het verbeteren van de website-ervaring. Klik op het informatie-icoon voor meer informatie. Meer details

janee

    Relevantere advertenties

    Dit beperkt het aantal keer dat dezelfde advertentie getoond wordt (frequency capping) en maakt het mogelijk om binnen Tweakers contextuele advertenties te tonen op basis van pagina's die je hebt bezocht. Meer details

    Tweakers genereert een willekeurige unieke code als identifier. Deze data wordt niet gedeeld met adverteerders of andere derde partijen en je kunt niet buiten Tweakers gevolgd worden. Indien je bent ingelogd, wordt deze identifier gekoppeld aan je account. Indien je niet bent ingelogd, wordt deze identifier gekoppeld aan je sessie die maximaal 4 maanden actief blijft. Je kunt deze toestemming te allen tijde intrekken.

    Ingesloten content van derden

    Deze cookies kunnen door derde partijen geplaatst worden via ingesloten content. Klik op het informatie-icoon voor meer informatie over de verwerkingsdoeleinden. Meer details

    janee