Hi!

Welchen User willst DU?

Den , der gerade unter Windows angemeldet ist?

Den bekommst Du mit folgender Zeile:

Username = Environment.UserName

Gruß Horst

...zur Antwort

Willst Du die Eingabe UNSICHTBAR machen!

Dann stehen Dir zwei bzw. drei Ereignisse zur Verfügung:

   Vorher dafür sorgen, dass die Eingaben an die Form-Ereignisse gemeldet werden mit:

Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
      Me.KeyPreview = True
   End Sub
   Private Sub Form1_KeyDown(sender As Object, e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
      Dim Nr As Integer = e.KeyCode
      Select Case Nr
         Case 13   ' Enter
            ' ---
         Case 17   ' STRG
            '---
         Case 114 'F3 #####
         Case 48   ' 0
            '---
      End Select
   End Sub
   Dim Tx As String
   Private Sub Form1_KeyPress(sender As Object, e As System.Windows.Forms.KeyPressEventArgs) Handles Me.KeyPress
      If e.KeyChar = Chr(13) Then
         Select Case Tx
            Case "/Test"
               MsgBox(Tx)
            Case "0023"
               MsgBox(Tx)
         End Select
         Tx = ""
      Else
         Tx = Tx + e.KeyChar
      End If
   End Sub

Das Dritte Ereignis Ist KeyUp, dass Du z.B. . für die Druck-Taste brauchst.

Mit einer TextBox ist die Eingabe sichtbar und leichter zu verarbeiten.

Viel Spaß!

Horst

...zur Antwort

Hallo!

Du brauchst noch einen Button (Button5 mit Gleichheitszeichen)

Der Code kann so aussehen:

 Private Ein, Erg As Double

 Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

  Ein = CDbl(TextBox1.Text)

 End Sub

' Für Addition (analog für Subtraktion)

 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

  Erg += Ein

  Label1.Text = Erg

 End Sub

' Für Multiplikation (analog für Division)

 Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button4.Click

  If Erg = 0 Then Erg = Ein

  Erg = Erg * Ein

  Label1.Text = Erg

 End Sub

' Der Ergebnis-Button beendet die Rechnung

 Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click

  Erg = 0

 End Sub

Viel Spaß!

Horst

...zur Antwort

Die Antwort von glasair ist FALSCH!

Erstelle eine neue Form.

Platziere darauf

  • Button1
  • TextBox1
  • ListBox1
  • FolderBrowserDialog1
  • PictureBox1

Bild zum Beitrag

Hier der Code:

 Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
   With FolderBrowserDialog1()
     Dim ant As DialogResult = .ShowDialog
     ListBox1.Items.Clear()
     TextBox1.Text = .SelectedPath
     ListBox1.Items.AddRange(FileList(TextBox1.Text))
   End With
 End Sub

 Function FileList(ByVal Path As String) As String()
   Dim F() As String
   F = IO.Directory.GetFiles(Path)
   Return F
 End Function

 Private Sub ListBox1_SelectedIndexChanged(sender As System.Object, e As System.EventArgs) Handles ListBox1.SelectedIndexChanged
   PictureBox1.Load(ListBox1.SelectedItem)
 End Sub

Viel Spaß!

Gruß

Horst

...zur Antwort

Ist Dein Ansatz überhaupt richtig? Du kannst doch nicht mit If-Then eine Verschlüsselung vornehmen.

Vielleicht hilft Dir folgender Ansatz:

Alle Zeichen in Deinem Text sind ASCII oder Unicode-Zeichen. Der ASCII Zeichensatz enthält Zeichen mit dem Code 0 bis 255, Unicode bis 65535.   ASCII kannst Du für Editor-Texte verwenden, bei Word Unicode. Und vbCrLf besteht aus den beiden Codes 10 und 13 (Chr(10) und Chr(13))

Jetzt eine Vorschlag zu Deinem Verschlüsselungsprogram:

Du hast beispielsweise einen ASCII- Text und einen ASCII-Schlüssel.

Wenn Du die Codewerte der Zeichen einzeln addierst verschlüsselst Du und entschlüsselst indem Du später die Schlüsselcodes wieder subtrahierst.

Einziges Problem ist: Beim  Addieren von zwei Werten kannst Du eine Zahl über 255 bekommen. Du musst also beim Verschlüsseln bei einem Wert über 255 diesen Grenzwert abziehen und beim Entschlüsseln bei Werten unter 0 die 255 wieder abziehen.

Hier ein Codebeispiel  für das Codieren:

    Function Codieren(ByVal Tx1 As String, ByVal Schlüssel As String) As String
        Dim m, n As Integer
        Dim Cd1 As Integer
        Dim Tx2 As String = ""
        n = 0
        For m = 0 To Tx1.Length - 1
            Cd1 = Asc(Tx1.Substring(m, 1)) + Asc(Schlüssel.Substring(n, 1))
            If Cd1 > 255 Then Cd1 = Cd1 - 255
            Tx2 = Tx2 & Chr(Cd1)
            If n = Schlüssel.Length - 1 Then n = 0
        Next
        Return Tx2
    End Function

Das Decodieren kannst Di sicher selbst programmieren.

Viel Spaß!

Horst

...zur Antwort

Ohne jede Umständlichkeit!

Ersetze Dein Hintergrundbild durch die Karte.

Z.B. so:

  Private Img As Image

Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
' ...
Img = PictureBox1.Image
' ...
End Sub

Private Sub ListBox1_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ListBox1.MouseDown
PictureBox1.Image = Img
End Sub

Viel Spaß!

Horst

...zur Antwort

Hier eine kleine Hilfe für Dein Problem.

Wenn Du noch Erläuterungen brauchst?

Private PBGraphics As Graphics
Private MyPen As New Pen(Color.Red, 3)
Private X, Y as Integer

Private Sub Form1_Load(sender As Object, e As System.EventArgs) Handles Me.Load
Dim myPen As New Pen(Color.Red)
PBGraphics = PictureBox1.CreateGraphics()
End Sub

Private Sub PictureBox1_MouseDown(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
Kreis(X, Y)
End Sub

Sub Kreis(X As Integer, Y As Integer)
PBGraphics.DrawEllipse(MyPen, X - 15, Y - 15, 30, 30)
End Sub

...zur Antwort

Jeder Spieler muss jeweils eine Zufallszahl zwischen 1 und 6 erzeugen..

Sieh mal in der Hilfe zu VB nach RND. Da findest Du eine Formel dafür.



...zur Antwort

Leider geht es nicht so bequem mit = = =.

Wenn die Variablennamen festliegen könnte es so aussehen:


Dim am1200, am1200f, am1215, am1215f, am1230 As String
am1200 = "ON1OG"
am1200f = "ON1OG"
am1215 = "ON1OG"
am1215f = "ON1OG"
am1230 = "ON1OG"
...zur Antwort

Ich habe mal drei Makros geschieben. Vielleicht hilft Dir das. Die Farbt habe ich Global deklariert, so dass er in allen Tabellen der Mappe verwendet werden kann.  Color (Cl1) ist als Long deklariert.

Im erstenMakro wird die Farbe Cl1 festgelegt (hier die der ausgewählten Zelle).

Im zweiten wird die Zellenfarbe  auf Cl1 gesetzt.

Im letzten Makro wird die Zelle komplett zurückgesetzt, also auf den Standardwert.

Global Cl1 As Long

Sub GetColor()
' Tastenkombination: Strg+g'
Cl1 = Selection.Interior.Color
End Sub

Sub SetColor()
' Tastenkombination: Strg+s
Selection.Interior.Color = Cl1
End Sub

Sub ColorClear()
' Tastenkombination: Strg+c'
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
End Sub
...zur Antwort

Ich habe Dir ein kleines Beispielprogramm geschrieben, dass mit Srings arbeitet und Komma-Schreibweise verarbeitet.

Auf einer Fom stehen

  • 1 Button
  • 3 TextBoxen
  • 1 Label

Der Code ist:

Dim S1, S2, S3, Ergebnis As Decimal

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

 S1 = Convert.ToDecimal(TextBox1.Text)

S2 = Convert.ToDecimal(TextBox2.Text)

S3 = Convert.ToDecimal(TextBox3.Text)

Ergebnis = S1 + S2 + S3

Label1.Text = Convert.ToString(Ergebnis)

End Sub

...zur Antwort

Wenn Du ein neues Projekt erstellst, wird direkt eine Ordnerstruktur angelegt.

Du findest den Pfad ganz einfach so:

  1. Gehe im Menü Datei auf die Zeile Form1 speichern unter ...
  2. Zeige die Pfadstruktur an, indem Du die Combobox im Dialog bei Speichern unter ausklappst.
...zur Antwort

Prüfe erste , ob Dein gesuchter Process überhaupt den von Dir vorgegebenen Namen hat?

Liste doch alle Processe in einer ListBox auf.

Das geht mit folgendem Code:

  Sub ListProcesses()
    ListBox1.Items.Clear()
    Dim p As Process
    For Each p In Diagnostics.Process.GetProcesses()
      ListBox1.Items.Add(Format(p.Id, "0000") & " = " & p.ProcessName)
    Next
  End Sub

Wenn Du den Process so nicht findest dann verwende beispielsweise die Titelzeile.des zugehörigen Programms (p.MainWindowTitle)

...zur Antwort
Weitere Inhalte können nur Nutzer sehen, die bei uns eingeloggt sind.