| |
Suche Visual-Basic Codesuche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 08:52 |
| hi,
ich habe ein programm mit dem man bestimmte stadtgebiete verwalten kann.
jetzt bräuchte ich noch hilfe bei den letzten handgriffen.
1:ich kann durch einen karte laden button ein bild hochladen.dieses bild sollte auf
eine bestimmte zeile im datagridview zuweissbar sein können.sprich als bsp.lade ich
ein bild hoch gebe in der zeile 1 meine daten ein,betätige einen weiteren button, den button
gebietskarte übernehmen, und das bild wird der zeile zugewiesen.das gleiche
passiert dann mit den anderen zeilen.jedes mal wenn ich eine andere zeile
anwähle,zeigt es mir im meinem pictureviewer die zugewiesene bilddatei an.
2:die Liste sollte speicherbar sein,dass heißt wenn ich das programm starte zeigt es
mir die von mir abgespeicherte aktuellste liste an,sodass ich nicht immer die
daten neu eingeben.das passiert in dem ich den vorhandenen button liste speichern betätige.
3:wenn ich den programm beenden button betätige,werde ich gefragt werden ob ich
wirklich beenden möchte.wenn ich aus versehen darauf komme und ich noch nicht
abgespeichert habe,möchte ich gefragt werden ob ich wirklich ohne speichern
beenden möchte.
ich würde euch gerne meinen schon vorhandenen code zur verfügung stellen, aber ich bekomme dann die fehlermeldung das der text zu lang ist und ich ihn auf 5kb kürzen muss.
gruß
dave | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 09:43 |
| Hallo!
zu 2.
Speicherbar? Zielmedium: Datenbank?
Welche Bilder liegen vor (Format)?
Sollen die Bilder ebenfalls im Zielmedium gespeichert werden?
Oder nur die Namen der Bilddateien (und die Bilddaten werden
als Dateien in einem Ordner abgelegt).
MfG
Manfred | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 09:46 |
| ja speicherbar! ich möchte einfach den butto speichern betätigen und die liste die im datagridview drin ist soll so abgespeichert werden. also nicht speicher unter sondern wenn ich das programm öffne soll es mir die liste so anzeigen wie ich sie das letzte mal gespeichert habe.
die bilder liegen als jpg vor. diese liegen in einem unterordner im projekt. | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 09:55 |
| Wie groß sind diese Bilder?
Werden zur komfortablen Anzeige als Liste Thumbnails benötigt?
Soll eine Datenbank erstellt werden oder reicht es, die Liste als
XML-Datei zu speichern und die Bilder anhand dieser Liste beim
Programmstart aus dem Biler-Verzeichnis zu laden?
MfG
Manfred | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 10:01 |
| ich glaube ich habe mich falsch augedrückt
die datenbank soll NICHT als xml-datei abgespeichert werden, sondern in dem grid.
das heist wenn ich das programm aufmache sehe ich schon die abgespeicherte liste.
die größe der bilder variiert. ich habe ein stretch funktion eingebaut, damit das bild im meinem pictureviewer in originalgröße oder angepasst im rahmen angezeigt wird. | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 10:16 |
| Ich vermute, Du verwendest eine Datatable,
die an ein DatagridView-Control gebunden ist
und die zwei Spalten besitzt:
Name der Bild-Datei (String)
Bild (Bitmap).
Aber wie soll der Inhalt dieser Datatable beim Beendigen
des Programms gespeichert werden? Nur die Spalte mit den
Dateiangaben oder die gesamte Table?
Ich würde einen FolderBrowserDialog verwenden, um den
Ordner mit den Bilddateien vom Benutzer abzufragen.
Die JPG-Dateien in diesem Ordner werden dann in eine ComboBox
eingetragen, aus der der User Dateien auswählen und in die
Table übertragen kann. Beim Click auf die Combobox wird
eine Bitmap erstellt - gewählter Dateiname im Konstruktor -
und in die zweite Tablespalte eingetragen.
Beim Beenden des Programms wird die aktuelle Dateiliste
als XML gespeichert.
Beim erneuten Start wird die Liste gelesen und die Bilder
aus dem Ordner werden dazu geladen.
Könnte das der gewünschte Ablauf sein?
MfG
Manfred | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 10:22 |
| genau so soll es sein.
es soll der gesamte inhalt der table gespeichert werden | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 10:30 |
| Nein. Das war genau nicht mein Vorschlag.
Ich bin davoon ausgegangen, dass es reicht, wenn die
Liste der Dateinamen gespeichert wird.
Beim Neustart des Programms werden die in einem
Ordner vorhandenen Bilddateien anhand dieser Liste geladen.
Wenn auch die Bilder selbst gespeichert werden sollen,
wird eine Datenbank benötigt, die eine entsprechende
Tabelle enthält.
MfG
Manfred | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 10:37 |
| ja gut, so kann man es auch sehen/verstehen.
der clou sollte eben sein, das wenn ich von einer zeile in die andere springe es mir jedesmal das zugewiesene bild anzeigt | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 11:06 |
| Hallo!
Vielleicht kannst Du damit etwas anfangen!
Public Class frmBilderListe
'Hier eine Datei zum Speichern der gewählten Bilder angeben
Const filelist As String = _
"F:\Daten\Bilderliste.txt" 'Liste der Dateinamen
Dim WithEvents cbofiles As New ComboBox With _
{.Parent = Me} 'Liste der Bilddateien im Ordner
Dim dt As New DataTable
Dim dgv As New DataGridView With _
{.Parent = Me, .DataSource = dt, _
.AllowUserToAddRows = False, .Top = 50, .ReadOnly = True}
Dim fbd As New FolderBrowserDialog With _
{.Description = "Ordner mit Bilddateien angeben", _
.ShowNewFolderButton = False}
Private Sub frmBilderListe_FormClosing(ByVal sender As Object, _
ByVal e As System.Windows.Forms.FormClosingEventArgs) _
Handles Me.FormClosing
If e.CloseReason = CloseReason.UserClosing Then
If MsgBox("Wirklich beenden? ", _
MsgBoxStyle.OkCancel) = MsgBoxResult.Cancel Then
e.Cancel = True
End If
End If
'Dateiliste speichern
If dt.Rows.Count > 0 Then
Dim fl(dt.Rows.Count - 1) As String
For i As Integer = 0 To dt.Rows.Count - 1
fl(i) = CStr(dt.Rows(i).Item(0))
Next i
IO.File.WriteAllLines _
(filelist, fl, System.Text.Encoding.UTF8)
End If
End Sub
Private Sub frmBilderListe_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
dt.Columns.Add("Datei", GetType(String))
dt.Columns.Add("Bild", GetType(Bitmap))
'Dateiliste und zugehörige Bilder laden
If IO.File.Exists(filelist) Then
Dim files() As String = _
IO.File.ReadAllLines(filelist, System.Text.Encoding.UTF8)
For i As Integer = 0 To files.Count - 1
If IO.File.Exists(files(i)) Then
Dim bmp As New Bitmap(files(i))
dt.Rows.Add(files(i), bmp)
End If
Next i
End If
'Ordner mit Bilddateien auswählen
If fbd.ShowDialog = DialogResult.OK Then
For Each file As String In IO.Directory.GetFiles _
(fbd.SelectedPath, "*.jpg", _
IO.SearchOption.TopDirectoryOnly)
cbofiles.Items.Add(file)
Next file
End If
End Sub
Private Sub cbofiles_SelectedIndexChanged(ByVal sender As Object, _
ByVal e As System.EventArgs) Handles cbofiles.SelectedIndexChanged
'Neue Zeile an Tafel anhängen gemäß Auswahl in der Combobox
Dim bmp As New Bitmap(cbofiles.SelectedItem.ToString)
dt.Rows.Add(CStr(cbofiles.SelectedItem), bmp)
End Sub
End Class
Beitrag wurde zuletzt am 24.11.11 um 11:08:23 editiert. | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 11:08 |
| ich werde es heut nachmittag mal ausprobieren
thx | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 17:40 |
| Dim dt As New DataTable
Dim dgv As New DataGridView With _
{.Parent = Me, .DataSource = dt, _
.AllowUserToAddRows = False, .Top = 50, .ReadOnly = True} hallo manfred,
ich bekomme die fehlermeldung "dgv" ist bereits als "Friend WithEvents dgv as System.Windows.Forms.Datagridview" in class deklariert | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 18:25 |
| Hallo!
Wenn Du das DataGridView-Control per Designer auf die Form
gezogen hast, muss diese Deklaration entfernt werden - oder
Du benutzt ein "frisches" Formular und erstellst nichts im
Designer, sondern nutzt nur den Code.
MfG
Manfred | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 24.11.11 23:32 |
| wie entferne ich die deklaration? | |
Re: suche code für buttonfunktionen | | | Autor: Manfred X | Datum: 24.11.11 23:49 |
| Statt:
Dim dgv As New DataGridView With _
{.Parent = Me, .DataSource = dt, _
.AllowUserToAddRows = False, .Top = 50, .ReadOnly = True} ein Datagridview auf die Form ziehen, es im Eigenschaftenfenster
als dgv benennen, Eigenschaften einrichten und im Code drei
Kommentarzeichen einfügen:
'Dim dgv As New DataGridView With _
' {.Parent = Me, .DataSource = dt, _
' .AllowUserToAddRows = False, .Top = 50, .ReadOnly = True} | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 25.11.11 15:07 |
| kann mir mal bitte jemand sagen wie ich hier meinen code hochladn kann?
ich habe die änderungen eingespielt und jetzt spinnt das programm total.
es lässt sich zum beispiel nicht mehr beenden. | |
Re: suche code für buttonfunktionen | | | Autor: DaveS (Moderator) | Datum: 25.11.11 15:32 |
| Wie Maas schon angedeutet hat, wenn du dein Projekt hochladen willst musst du einen Provider finden, der diesen Dienst anbeitet, es gibt genug. Ein Forum Beitrag ist auf 5KB beschränkt. Das Forum ist aber sowieso nicht hier um deinen Code zu prüfen, testen und korrigieren, sondern um konkrete gezielte Fragen zu beantworten. Was kommt als nächstes, einige Erweiterungen bitte einbauen? Offensichtlich fehlen dir aber jegliche Grundlagen, am besten investierst du etwas Zeit um dir diese Grundlagen beizubringen. Auch wenn manche Leute anscheinend bereit sind kostenlos die Programmierarbeit zu übernehmen man lernt dadurch so gut wie nichts.
________
Alle Angaben ohne Gewähr. Keine Haftung für Vorschläge, Tipps oder sonstige Hilfe, falls es schiefgeht, nur Zeit verschwendet oder man sonst nicht zufrieden ist | |
Re: suche code für buttonfunktionen | | | Autor: dave.mars | Datum: 25.11.11 17:58 |
| bin ganz deiner meinung nur weiss ich das bisher einige der funktionen in meinem programm gingen und jetzt nicht mehr. deshalb möchte ich euch den code zur verfügung stellen.
und was sind das bitte für provider? | |
| Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
|
|
sevISDN 1.0
Überwachung aller eingehender Anrufe!
Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Weitere InfosTipp des Monats Neu! sevDTA 3.0 Pro
SEPA mit Kontonummernprüfung
Erstellen von SEPA-Dateien mit integriertem BIC-Verzeichnis und Konto- nummern-Prüfverfahren, so dass ungültige Bankdaten bereits im Vorfeld ermittelt werden können. Weitere Infos
|