tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
7
ZUGRIFFE
492
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Fredi Fredi ist offline Grünschnabel
    Registriert seit
    Dec 2009
    Beiträge
    3
    Hallo,
    Wie kann ich dem Programm beibringen,
    das es nur *.avi Dateien zuläßt?
    Wenn eine Textdatei gewählt wurde und AVI anklicke dann gibt es eine Fehlermeldung.

    Private Sub mnuAVI_Click()
    Dim OK%
    Dim pfad$

    pfad = Datei1.FileName
    If pfad = "" Then OK% = MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
    If pfad = "" Then Exit Sub

    Sound$ = Datei1.Path + "\" + pfad

    If Sound$ > "" Then frmAVI.Show

    End Sub
     

  2. #2
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Code vb:
    1
    2
    3
    
    If Right(Datei1.FileName, 3) = "avi" then
        'es ist eine avi-datei
    End If
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  3. #3
    Tekkion Tekkion ist offline Mitglied Bronze
    Registriert seit
    May 2008
    Beiträge
    46
    Zitat Zitat von yaslaw Beitrag anzeigen
    Item: Ich lese keinen Code mehr, der nicht formatiert und mindestens in [CODE]..[/CODE.] (besser noch den Tag der jeweiligen Sprache) gesetzt ist
    Item: Formatiert den Code (auch SQL-Statements) sauber - dann kann man ihn auch lesen
    fail?

    so gehts - wie ließt du den pfad den ein?
     

  4. #4
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Zitat Zitat von Tekkion Beitrag anzeigen
    fail?
    Auch ich habe vereinzelt den unbeugsamen Drang zu helfen
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  5. #5
    Fredi Fredi ist offline Grünschnabel
    Registriert seit
    Dec 2009
    Beiträge
    3
    Hallo,

    erst mal danke für den Hinweis.
    Da ich nur wenig Kenntnisse habe, weiß ich nicht so recht, was gemeint ist.
    Etwas mehr Code und Kommentare wären sehr hilfreich, damit mir
    die Zusammenhänge klar werden.

    Vielen Dank im voraus und viele Grüße
    Fredi
     

  6. #6
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Du hast ja schon If im einsatz? Wo liegt das Problem?
    Ich weiss ja nicht was du machen willst, falls es kein avi ist. Fehlermeldung? einfach nix? Weiter unten in deinem Code fortfahren?

    Also, spielen wir mal Erklärbär. Dazu habe ich aus deinem Code alles Sinnlose rausgelöscht und die *.avi-Bedinnung reingenommen
    Code vb:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    
    Private Sub mnuAVI_Click()
        Dim Sound   As String
        Dim pfad    As String
        
        pfad = Datei1.FileName
        
        If pfad = vbNullString OR Right(pfad, 3) = "avi" Then 
            MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
        Else
            frmAVI.Show 
        End If
    End Sub

    Nun zu den Detail.

    Code vb:
    1
    2
    3
    
    Sound$ = Datei1.Path + "\" + pfad
     
    If Sound$ > "" Then frmAVI.Show
    Diese Codeabschnitt brungt nicht viel. Zuerst erstellst du einen Stringaus dem Pfad und und fügst ihm ein "\" hinzu. Damit hast du im Minimum einen String "\"
    In der nächsten Zeile prüfst du, ob der String leer ist. Kann er nie sein, weil er ja mindestens "\" beinhaltet.
    Somit brauchen wir Sound für gar nix.

    Code vb:
    1
    2
    
    If pfad = "" Then OK% = MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
    If pfad = "" Then Exit Sub
    Hier prüfst du zweimal das gleiche. Das kann man besser in einen If-EndIf-Block setzen.
    Die Variabl OK wird nie ausgewertet. Aslo kann man sie auch weglassen und die Antwort der MsgBox unter den Tisch spühlen. Das OK brauchen wir also auch nicht.

    Was habe ich selber nun reingetan?
    Code vb:
    1
    2
    3
    
        If pfad = vbNullString OR Right(pfad, 3) = "avi" Then
        ...
    END IF
    Ich habe die "" durch vbNullString ersetzt. Dies ist eine Konstante von VB6 und ist das gleiche wie "", aber es ist sauberer programmiert.
    Dan habe ich die Prüfung auf avi hinzugefügt. Right() nimm mir eine gewisse Anzahl Zeichen eines String von Rechts her gesehen. In unserem Fall die letzten 3 Zeichen des Dateinamens. Diese vergleiche ich mit dem String "avi".

    IF THEN
    ELSE
    END IF
    Dieses Konstrukt bitte selber googeln. Das ist das Ein mal Eins jeder Programmierung.

    Abschliessend:
    Ich weiss nicht woher Datei1.FileName und was frmAVI.Show macht. Wenns da Knallt, können wir dir anhand des von dir geposteten Codes nicht helfen.
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  7. #7
    Fredi Fredi ist offline Grünschnabel
    Registriert seit
    Dec 2009
    Beiträge
    3
    Hallo Yaslaw,

    erst mal Danke für deine Arbeit.
    Unten habe ich alles aufgeführt.
    Es geht immer noch nicht richtig.

    Gruß Fredi


    'Form1
    Option Explicit
    Dim DateiName As String

    Private Sub Form_Load()
    Left = (Screen.Width - Width) \ 2
    Top = (Screen.Height - Height) \ 2
    End Sub

    Private Sub Laufwerk1_Change()
    Verzeichnis1.Path = Laufwerk1.Drive
    End Sub

    Private Sub Verzeichnis1_Change()
    Datei1.Path = Verzeichnis1.Path
    End Sub

    Private Sub Datei1_Click()
    DateiName = Datei1.List(Datei1.ListIndex)
    DateiName = Datei1.Path + "\" + DateiName
    End Sub

    Private Sub mnuAVI_Click()
    Dim OK%

    Sound$ = Datei1.Path + "\" + Datei1.FileName

    If Right(Datei1.FileName, 3) = "avi" Then 'es ist eine avi-datei
    OK% = MsgBox(" Erst AVI Datei wählen", 320, "Fehler")
    Else
    frmAVI.Show
    End If

    End Sub

    Private Sub mnuEnde_Click()
    End
    End Sub

    'Form2AVI
    Private Sub Form_Load()
    Left = (Screen.Width - Width) \ 2
    Top = (Screen.Height - Height) \ 2

    OLE1.CreateEmbed Sound$
    OLE1.DoVerb

    End Sub

    Private Sub mnuEnde_Click()

    Sound$ = ""
    Form1.Show
    frmAVI.Hide
    Unload Me
    End Sub

    'Module1.bas
    Public Sound$
     

  8. #8
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    Ein Zitat aus meiner Signatur. In deinem Fall währe das [VB]...[/VB]

    [FONT="Courier New"]Item: Ich lese keinen Code mehr, der nicht formatiert und mindestens in [CODE]..[/CODE] (besser noch den Tag der jeweiligen Sprache) gesetzt ist
    Item: Formatiert den Code (auch SQL-Statements) sauber - dann kann man ihn auch lesen
    Sorry, aber ich habe echt keinen Bock deinen Code zu formatieren damit ich ihn lesen und verstehen kann.

    Nachtrag:
    Was geht noch nicht richtig? Fehlermeldung?
    Geändert von Yaslaw (07.12.09 um 23:20 Uhr) Grund: Nachtrag
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

Ähnliche Themen

  1. Antworten: 6
    Letzter Beitrag: 21.12.09, 00:52
  2. Antworten: 4
    Letzter Beitrag: 27.12.06, 13:02
  3. Datei auswählen und umbenennen
    Von DaRealGaukler im Forum .NET Archiv
    Antworten: 13
    Letzter Beitrag: 31.07.05, 16:00
  4. Datei auswählen, Datei einlesen
    Von -TS- im Forum Visual Basic 6.0
    Antworten: 4
    Letzter Beitrag: 21.04.05, 21:08
  5. Kein Datei-Auswählen-Fenster
    Von Vitei im Forum Linux & Unix
    Antworten: 5
    Letzter Beitrag: 24.10.03, 23:28

Stichworte