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


Hämta värden från ini till combobox

Postades av 2008-11-24 11:02:35 - Joel Alexandersson, i forum vb.net, Tråden har 1 Kommentarer och lästs av 808 personer

Hej! Jag har haft uppe ett liknande problem innan. Har nu blivit tvungen att ändra det då beslut tagits om att det ska fungera på ett annat sätt.

Så här är det:

Jag har 6 olika ini-filer:

Handkorning_Amnesplock.ini
Handkorning_Kap.ini
Handkorning_Dackmaskin.ini
Handkorning_KlossDackmaskin.ini
Handkorning_Medmaskin.ini
Handkorning_Uttransport.ini

I varje ini- fil finns tre olika kategorier som innehåller ett par värden:

[Motorer_Amnesplock]
[Hydrauliska_Amnesplock]
[Pneumatiska_Amnesplock]

[Motorer_Kap]
[Hydrauliska_Kap]
[Pneumatiska_Kap]

osv...osv..

i mitt program har jag 6 olika sidor, en för varje maskindel. På värje sida finns det två "kategorier" kan man säga."Handkörning 1" och "handkörning 2"

Handkörning 1 har tre stycken comboboxar:

Motorer
Hydrauliska ventiler
Pneumatiska ventiler

Handkörning 2 har också tre stycken comboboxar:

Motorer
Hydrauliska ventiler
Pneumatiska ventiler

Jag vill kunna hämta ut alla motorer, hydraulventiler och pneumatiska ventiler som tillhör sina maskiner
i sina respektive comboboxar. Handkörning 1 och 2 på Ämnesplocken t.ex ska ju hämta samma värden från ini filen så man kan köra två saker samtidigt. När jag sen valt ett värde ska det sättas en variabel i min PLC.

Stort projekt. Men hur gör jag? Jag vill gärna ha kodexempel, Inte bara hur jag ska gå till väga. Mycket tacksam för hjälp!!





Svara

Sv: Hämta värden från ini till combobox

Postades av 2008-11-25 14:40:51 - Joel Alexandersson

Så här ser min kod ut hittills:


'Här hämtar jag värden från ini-filen. 

        'Ämnesplock - handkörning 1
        objTxt1 = objFSO1.OpenTextFile("Handkorning_Amnesplock.ini")
        If GoToSection(objTxt1, "[Motorer_Amnesplock]") Then
            sLine1 = objTxt1.ReadLine
            comboAmnesplockM1.Items.Clear()
            comboAmnesplockM1.Items.Add("Ingen motor vald")
            comboAmnesplockM1.SelectedIndex = 0
            Do While Not objTxt1.AtEndOfStream And Not (VB.Left(sLine1, 1) = "[")
                If sLine1 <> "" Then
                    Dim s As Array = Split(sLine1, "=")
                    comboAmnesplockM1.Items.Add(VB.Right(sLine1, Len(sLine1) - InStr(1, sLine1, "=", CompareMethod.Text)))
                End If
                sLine1 = objTxt1.ReadLine
            Loop
        End If
        objTxt2 = objFSO2.OpenTextFile("Handkorning_Amnesplock.ini")
        If GoToSection(objTxt2, "[Ventiler_Amnesplock]") Then
            sLine2 = objTxt2.ReadLine
            comboAmnesplockH1.Items.Clear()
            comboAmnesplockH1.Items.Add("Ingen ventil vald")
            comboAmnesplockH1.SelectedIndex = 0
            Do While Not objTxt2.AtEndOfStream And Not (VB.Left(sLine2, 1) = "[")
                If sLine2 <> "" Then
                    comboAmnesplockH1.Items.Add(VB.Right(sLine2, Len(sLine2) - InStr(1, sLine2, "=", CompareMethod.Text)))
                End If
                sLine2 = objTxt2.ReadLine
            Loop
        End If


        'Ämnesplock - handkörning 2
        objTxt1 = objFSO1.OpenTextFile("Handkorning_Amnesplock.ini")
        If GoToSection(objTxt1, "[Motorer_Amnesplock]") Then
            sLine1 = objTxt1.ReadLine
            comboAmnesplockM2.Items.Clear()
            comboAmnesplockM2.Items.Add("Ingen motor vald")
            comboAmnesplockM2.SelectedIndex = 0
            Do While Not objTxt1.AtEndOfStream And Not (VB.Left(sLine1, 1) = "[")
                If sLine1 <> "" Then
                    comboAmnesplockM2.Items.Add(VB.Right(sLine1, Len(sLine1) - InStr(1, sLine1, "=", CompareMethod.Text)))
                End If
                sLine1 = objTxt1.ReadLine
            Loop
        End If
        objTxt2 = objFSO2.OpenTextFile("Handkorning_Amnesplock.ini")
        If GoToSection(objTxt2, "[Ventiler_Amnesplock]") Then
            sLine2 = objTxt2.ReadLine
            comboAmnesplockH2.Items.Clear()
            comboAmnesplockH2.Items.Add("Ingen ventil vald")
            comboAmnesplockH2.SelectedIndex = 0
            Do While Not objTxt2.AtEndOfStream And Not (VB.Left(sLine2, 1) = "[")
                If sLine2 <> "" Then
                    comboAmnesplockH2.Items.Add(VB.Right(sLine2, Len(sLine2) - InStr(1, sLine2, "=", CompareMethod.Text)))
                End If
                sLine2 = objTxt2.ReadLine
            Loop
        End If

    Private Function GoToSection(ByRef filename As Scripting.TextStream, ByVal ParamArray SecName() As Object) As Boolean
        Dim i As Short
        Dim Data As String

        On Error GoTo errorHandler

        GoToSection = False
        Do While Not filename.AtEndOfStream
            Data = filename.ReadLine
            For i = 0 To UBound(SecName)
                If InStr(1, Data, UCase(SecName(i)), CompareMethod.Text) = 1 Then
                    GoToSection = True
                    Exit Do
                End If
            Next i
        Loop
        Exit Function
errorHandler:
        GoToSection = False
    End Function


'Sen har jag en knapp som ska ta värdet från ini-filen/comboboxen och skriva en siffra (alltså numret i ini-filen) i min plc.

    Private Sub AktiveraAmnesplock1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AktiveraAmnesplock1.Click
        Dim ValtVarde As Object
        If Not comboAmnesplockM1.SelectedIndex = 0 Then
            ValtVarde = comboAmnesplockM1.SelectedItem
            Call TcClientSync.WriteVar(HMI_Hand1, ValtVarde)
        Else
            MsgBox("Välj en motor!")
        End If
    End Sub



Den här koden visar just nu "8.973193e-037" vilket som vem som helst vet inte stämmer. Hur gör jag så att det blir rätt?


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 726
27 958
271 751
399
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