[Warning] main.pas(115): Return value of function 'funvisible' might be undefined
[Warning] main.pas(126): Return value of function 'funscore' might be undefined
[Warning] main.pas(137): Return value of function 'funcheck' might be undefined
[Warning] main.pas(150): Return value of function 'funmeno' might be undefined

解决方案 »

  1.   

    你函数没有定义好,自定义函数应有二个地方:1.在窗体类中定义,就是在那一堆窗体类下面定义一个不包含窗体类名的过程或函数定义
    2.在实现的时候一定要比原定义多出一个窗体类名,比如这样:
    //定义过程
    type
      TFLoadAnswer = class(TForm)
        Panel1: TPanel;
        AnswerPathSTV: TShellTreeView;
        Panel2: TPanel;
        Panel3: TPanel;
        CancelBT: TButton;
        OKBT: TButton;
        Panel4: TPanel;
        Label1: TLabel;
        procedure FormShow(Sender: TObject);
        procedure OKBTClick(Sender: TObject);
        procedure CancelBTClick(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
        function LoadAnswer():Integer;//在此
      end;
    //实现它!
    procedure TFLoadAnswer.OKBTClick(Sender: TObject);//注意与上面定义的区别:多出一个窗体类名:TFLoadAnswer
    begin//end;
      

  2.   

    可能在内部函数中有选择分支吧。
    注意返回值result的初始化或者保证错误的处理等。
    具体可贴出你的函数代码来。
      

  3.   

    如果你定义的是function,则必须要返回值。不管这个值有没有用。(我就喜欢用函数)
    你也可以定义成procedure,这样系统就不会警告你了,但是不论你想不想要,都不会有返回值。
       具体情况具体分析,另外也看个人的喜好。
      

  4.   

    同意,函数要返回一个值,过程不用,具体定义的地方同意wooden954(wooden)说的,很对
      

  5.   

    我的代码是这样的,请高手指点:var
      form_main: Tform_main;//以下是函数申明
      function funvisible(i:integer):boolean;
      function funscore():boolean;
      function funcheck():boolean;
      function funmeno(s:integer):boolean;//申明到些止,注意前后位置
    implementation
    uses help;
    {$R *.dfm}
    function funvisible(i:integer):boolean;//funvisible函数的代码
    begin
    ………….
    end;
      

  6.   

    那你的每一个函数实现的最后都必须return 一个boolean值。
    检查一下吧。
      

  7.   

    function funvisible(i:integer):boolean;//funvisible函数的代码
    begin
      Result := false;
      .......
      .......
      ......
    end;
      

  8.   

    function funvisible(i:integer):boolean;//funvisible函数的代码begin
      
      .......
      .......
      ......  Result := b;//b为你在这个函数执行后想返回的boolean值   
    end;
      

  9.   

    应该是你逻辑分支(if一类的)没有覆盖全。
    可以在begin后面立刻给result一个你认为合适的值
      

  10.   

    没返回值
    function funvisible(i:integer):boolean;//funvisible函数的代码begin
        Result := b;//b为你在这个函数执行后想返回的boolean值   
       .......
      .......
      ......
    end;
      

  11.   

    你的返回值是在条件语句後就会这样
    一开始返回一个默认值,后面在重新写她的返回值就好了
    function funvisible(i:integer):boolean;//funvisible函数的代码begin
        Result := 0;
      if ... then
        result := ...
    end;
      

  12.   

    我没有用Result返回,用的是一个选择分支case i of 
    case i of 
    1..20 : showmessage('不及格');
    21..30 : showmessage('及格');
    .
    .
    .
    else showmessage('error');
    end;
      

  13.   

    这样阿,你的代码里边没返回Boolean值阿。
    根据你的情况用procedure就可以了。