Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
Verfasst am: 20.12.2007, 00:24 Titel: FBEdit - Edit- u. Static-Felder zur Laufzeit beschriften |
|
|
Hallo,
ich nutze für ein Projektchen das Beispiel-Dialog-Template von FBEdit. Zu Beginn würde ich gerne mehreren Static- und Edit-Feldern Werte zuweisen, die beim Programmstart ermittelt wurden. Wie stell ich das an? Ich hab das schon mit einem einmaligen Aufruf von
Code: | SetDlgItemText(hWin, IDC_EDT1, InfoText) |
in DlgProc versucht (einmaliger Aufruf durch SHARED-Variable sichergestellt, die nach Aufruf auf "erledigt" gesetzt wird), aber dann erscheint nichts in den Feldern. InfoText ist eine Stringvariable, IDC_EDT1 heißt das Feld und in der .bi-Datei ist die Ressource "#define"t. Wie geht das Zuweisen zur Laufzeit also richtig?
Viele Grüße!
Sebastian _________________
Die gefährlichsten Familienclans | Opas Leistung muss sich wieder lohnen - für 6 bis 10 Generationen! |
|
Nach oben |
|
 |
Bimi
Anmeldungsdatum: 03.12.2007 Beiträge: 66
|
Verfasst am: 20.12.2007, 10:10 Titel: |
|
|
Keine konkrete Lösung, eher eine Vermutung:
Probier mal ZSTRING oder ähnliches als String aus. Die Standardstringsd sind nicht nullterminiert und machen öffters Probleme in Zusammenhang mit externen Libs. _________________ Rechtbehelf:
Rechschreibverfehlungen, Vergehen an der Deutschen Sprache sowie Stabwechselverbuchselungen unterliegen dem Urheberrecht, sind voll beabsichtigt und fördern das aufmerksame Lesen. |
|
Nach oben |
|
 |
Sebastian Administrator

Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
 |
c.m.obrecht

Anmeldungsdatum: 09.03.2006 Beiträge: 377 Wohnort: Hofstetten SO, CH
|
Verfasst am: 27.12.2007, 07:43 Titel: |
|
|
und SendMessage? _________________ ...längre blomstre gamle nord... |
|
Nach oben |
|
 |
Lutz Ifer Grillmeister

Anmeldungsdatum: 23.09.2005 Beiträge: 555
|
Verfasst am: 27.12.2007, 12:15 Titel: |
|
|
Code: | SetDlgItemText(hWin, IDC_EDT1, strptr(InfoText)) |
"strptr" != "@"
@: Pointer auf den String-UDT
strptr: Pointer auf den String-"Inhalt", also das, was man eigentlich will.
Code: | dim as hWnd hWndTemp = GetDlgItem(hWnd, IDC_EDT1) |
Vielleicht später ganz nützlich, wenn Du von einer Ressourcen-ID auf ein Windowhandle kommen möchtest.
LG
Lutz Ifer _________________ Wahnsinn ist nur die Antwort einer gesunden Psyche auf eine kranke Gesellschaft. |
|
Nach oben |
|
 |
Dusky_Joe

Anmeldungsdatum: 07.01.2005 Beiträge: 1007 Wohnort: Regensburg/Oberpfalz
|
Verfasst am: 29.12.2007, 15:29 Titel: |
|
|
Ich bin mir sicher, dass ich ohne Template aus FBEdit mit SetWindowText die Caption ändern konnte. Aus der win32.hlp:
BOOL SetWindowText(
HWND hWnd, // handle of window or control
LPCTSTR lpString // address of string
);
Den hWnd bekommst du über GetDlgItem (Handle_To_Dialog, Item_ID).
Wenn du später die Caption auslesen willst, kannst du das über GetWindowText bzw. GetWindowTextLenght machen. Funktioniert auch für Buttons, Dialogfenster, etc.
==> Nicht mit .rc-Files getestet, aber mit Controlls, die ich selbst über CreateWindowEx erzeugt habe.
Viel Glück!
Have a nice day
Ciao _________________ fully biological degradable
Once, the big wave arrives, you've got two ways, you can go:
Either, you ride it, or you don't do.
But, if you don't ride, you'll never know wether you'd have gone wet. |
|
Nach oben |
|
 |
|