AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi D7ComboBoxStringsGetPatch, leerer Comboboxeintrag
Thema durchsuchen
Ansicht
Themen-Optionen

D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

Ein Thema von buchsbaum · begonnen am 16. Sep 2009 · letzter Beitrag vom 21. Sep 2009
Antwort Antwort
buchsbaum

Registriert seit: 21. Jul 2009
9 Beiträge
 
#1

D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 16. Sep 2009, 11:30
Hallo

Ich habe ein Problem bezüglich es einfügens eines leeren Feldes in eine ComboBox. Habe jetzt schon herausgefunden, dass dieses Probelm mit Delphi 7 bereits bekannt ist und auch ein offizieller Patch (D7ComboBoxStringsGetPatch.pas) herausgebracht wurde.

Leider konnte ich das Problem bisher nicht beheben. ich habe den patch ins Programm eingefügt:
über Datei -> Neu -> Unit
Unit-Code mit dem PatchCode überschrieben, gespeichert.
in der Unit in der sich die ComboBox befindet unter

implementation
uses Unit7;

eingefügt.

Leider besteht das Problem weiterhin. Immer wenn ein leerer ComboBox Eintrag ausgewählt wird, erscheint eine Fehlermeldung.

Ich weiß nicht ob ich nur die Unit nicht richtig eingebunden habe oder ob das Problem woanders liegt. Vielleicht hatte ja jemand das gleiche Problem oder ne' schlaue Idee.

Achso, das Problem tritt auch bekannterweise nur bei Windows XP und 2000 SP4 auf. Unter Vista ist der Fehler nicht aufgetreten.

Kann mir evtl. jemand weiterhelfen?

Mit freundlichem Gruß
Buchsbaum




Nachtrag:

Hier habe ich einmal die ersten Zeilen des Patches eingefügt:

unit D7ComboBoxStringsGetPatch;

// The patch fixes TCustomComboBoxStrings.Get method for empty string item in Delphi 7.

{$I rpconf.inc}

interface



Die dritte Zeile "{$I rpconf.inc}" kann nicht gefunden werden. Fehlermeldung erscheint:
"[Fataler Fehler] D7ComboBoxStringsGetPatch.pas(5): Datei nicht gefunden: 'rpconf.inc'"

Kann das vielleicht auch die Ursache sein?


--- Delphi 7 used ---
  Mit Zitat antworten Zitat
buchsbaum

Registriert seit: 21. Jul 2009
9 Beiträge
 
#2

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 07:40
Oh mann ... ich weiß es ist kein einfaches Problem, würde mich aber über kreative Anregungen sehr freuen!


Mfg
Buchsbaum
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#3

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 07:42
Hallo,

ich kenne den Patch nicht, aber besteht der wirklich nur aus einer (Pas-)Datei ?

#Update:*
Was passiert, wenn du das {$I rpconf.inc} einfach ausklammerst ?
Scheint was von JEDI zu sein.

Hänge doch mal ein Minimal-Beispiel an, wo es nicht klappt.


Heiko
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#4

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 07:42
Geht es auch nicht, wenn Du statt eines komplett leeren Eintrages evtl. ein Leerzeichen (#32) speicherst oder kommt das nicht in Frage?
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
buchsbaum

Registriert seit: 21. Jul 2009
9 Beiträge
 
#5

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 08:05
Also erst einmal vielen Dank für die Antworten! Hab schon ne' weile drauf gewartet

zu Hoika:
ja, der patch besteht nur aus einer .pas Datei.

Das {$I rpconf.inc} kann ich einfach ausklammern, dann passiert nix weiter. Aber ich dachte das evtl. das nicht-funktionieren des patches darauf zurückzuführen ist ...

Was für ein Beispiel soll ich anfügen? Wenn man Delphi 7 benutzt und dazu noch Windows 2000 ab SP3 dann einfach im Programm schreiben:

ComBox.items.add('');

wenn dann das Prog ausgeführt wird und dieser geaddete Eintrag gewählt wird dann gibt's nen Fehler. Manchmal auch bei XP SP3, aber nicht immer wie ich vor ein paar Minuten gerade herausgefunden habe ...



zu mirage:
das würde gehen, ich könnte einfach ein leerzeichen einfügen, dann gäbe es die Fehlermeldung nichtl, da der ComboBox Eintrag dann ja nicht leer ist. Das ist aber leider kein Lösungsansatz für das eigentliche Problem, denn mit den ausgewählten Einträgen in der ComboBox soll später weiter gearbeitet werden, und da brauch ich die Funktionalität, dass der Eintrag komplett leer ist ...
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#6

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 08:14
Zitat von buchsbaum:
das würde gehen, ich könnte einfach ein leerzeichen einfügen, dann gäbe es die Fehlermeldung nichtl, da der ComboBox Eintrag dann ja nicht leer ist. Das ist aber leider kein Lösungsansatz für das eigentliche Problem, denn mit den ausgewählten Einträgen in der ComboBox soll später weiter gearbeitet werden, und da brauch ich die Funktionalität, dass der Eintrag komplett leer ist ...
Trim( ComboBox.Text )
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#7

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 08:37
Hallo,

Zitat:
Ich weiß nicht ob ich nur die Unit nicht richtig eingebunden habe oder ob das Problem woanders liegt. Vielleicht hatte ja jemand das gleiche Problem oder ne' schlaue Idee.
Deshalb ja der Hinweise mit dem Projekt-Anhängen.

Steht die Unit Unit7 ?? (Warum zum Teufel heiist die Unit nicht
D7ComboBoxStringsGetPatch.pas)

denn in der dpr oder sonst wo im Projekt ?


Heiko
Heiko
  Mit Zitat antworten Zitat
buchsbaum

Registriert seit: 21. Jul 2009
9 Beiträge
 
#8

Re: D7ComboBoxStringsGetPatch, leerer Comboboxeintrag

  Alt 21. Sep 2009, 08:50
Codeauszug:


Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Grids, comobj, ExtCtrls, Menus, ComCtrls, ShellApi,
  Printers, Gauges, jpeg;

type
  TF_main = class(TForm)
    Button1: TButton;
    gridinarbeit: TStringGrid;
    ...
    procedure Button2Click(Sender: TObject);
  private
    { Private-Deklarationen }
    SL : TStringlist;
  public
    { Public-Deklarationen }
    StringlistTabellen, Stringlist, Stringlist2 : Tstringlist;
    StringlistTemp : TStringlist;
  end;

procedure set_status(Anzeigetext : String; Hinttext : String);
procedure update_files_to_stringlist;
procedure load_tree_view;

var
  F_main: TF_main;
  global_param : String;

  farbliste : TStringlist; //ComboBox-Einträge die zu färben sind

implementation
uses Unit2, Unit3, Unit4, Unit5, Unit6, D7ComboBoxStringsGetPatch;

{$R *.dfm}
{TreeView laden und anzeigen}
procedure load_tree_view;

Die Unit1 ist die Unit, in der sich die ComboBox befindet um die es geht.

Die Unit hieß Unit7, weil ich über Datei->Neu->Unit eine neue Unit eingefügt habe, dann den Text mit dem aus der D7ComboBoxStringsGetPatch.pas Datei ersetzt habe und dann gespeichert hab. Nun heißt die Unit7 aber D7ComboBoxStringsGetPatch.

wenn ich auf ansicht->Units... gehe dann steht dort auch die D7ComboBoxStringsGetPatch gelistet.

Wie würde ich denn richtig eine Unit in eine andere einbinden?
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz