• 當前位置:首頁 » 股票走勢 » vfp如何生成股票走勢圖

    vfp如何生成股票走勢圖

    發布時間: 2021-08-27 14:32:34

    ? vfp怎樣生成二維碼的開源代碼

    環境:Visual Studio 2013
    準備工作:引入一個dll——ThoughtWorks.QRCode
    dll作用:封裝成熟的二維碼算法等(有包不用自己寫的,我覺得都是大仙)
    引入dll方法:
    (1)打開“程序包管理控制臺”(視圖——其他窗口——程序包管理控制臺)
    (2)Install-Package -ProjectName 你的項目名稱 ThoughtWorks.QRCode
    (3)等待等待等待等待。。。。。。。然后裝完。

    生成二維碼的核心代碼:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    //mapPath:網站根目錄
    //fileSaveFolder:相對路徑
    //link:鏈接或者文本
    public static string
    GenerateLinkQRCode
    (string mapPath, string fileSaveFolder, string link)
    {
    QRCodeEncoder qr = new QRCodeEncoder()
    {
    //編碼
    QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE,
    //二維碼縮放
    QRCodeScale = 4,
    //數字越小,二維碼密度越小,
    //可容納的文本越少
    QRCodeVersion = 4,
    //
    QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
    };

    //存放路徑處理
    if (!Directory.Exists(mapPath + fileSaveFolder))
    {
    Directory.CreateDirectory(mapPath + fileSaveFolder);
    }

    //給二維碼圖片取名字
    //規則可任意修改
    string fileName = "QRCode" +
    DateTime.Now.ToString("yyyyMMddHHmmss") +
    隨機字符串 +
    ".png";

    //存放二維碼的絕對路徑
    string filePath = mapPath + fileSaveFolder + fileName;

    //生成二維碼圖片放在內存中
    Bitmap bitmap = qr.Encode(link);
    //保存圖片到服務器磁盤(本地保存)
    Bitmap.Save(filePath, System.Drawing.Imaging.ImageFormat.Png);
    //準備返回二維碼圖片相對路徑
    string result = fileSaveFolder + fileName;
    result = "/" + result.Replace(@"\", "/");
    //輸出結果,就是二維碼的路徑
    return result;
    }
    本回答由提問者推薦評論 0 0

    J_oin
    采納率:42% 擅長: JavaScript C#/.NET 編程語言 Html/Css
    其他回答
    新建一個window應用程序,然后引入.NET二維碼類庫(開源的類庫,可從網上下載):
    核心代碼如下:

    using System;

    using System.Collections.Generic;

    using System.ComponentModel;

    using System.Data;

    using System.Drawing;

    using System.Linq;

    using System.Text;

    using System.Windows.Forms;

    namespace WinQRCode

    {

    using ThoughtWorks.QRCode.Codec;

    using ThoughtWorks.QRCode.Codec.Data;

    using ThoughtWorks.QRCode.Codec.Util;

    using System.IO;

    using PdfToImage;

    public partial class Form1 : Form

    {

    public Form1()

    {

    InitializeComponent();

    }

    /// <summary>

    /// 編碼

    /// </summary>

    /// <param name="sender"></param>

    /// <param name="e"></param>

    private void button1_Click(object sender, EventArgs e)

    {

    if (this.textBox1.Text != "")

    {

    Cursor.Current = Cursors.WaitCursor;

    if (textBox1.Text.Trim() == String.Empty)

    {

    MessageBox.Show("不能為空.");

    return;

    }

    QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();

    qrCodeEncoder.QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE;

    qrCodeEncoder.QRCodeScale = 4;

    qrCodeEncoder.QRCodeVersion = 7;

    qrCodeEncoder.QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M;

    System.Drawing.Image image;

    String data = textBox1.Text;

    //編碼

    image = qrCodeEncoder.Encode(data);

    //圖片顯示

    this.pictureBox1.Image = image;

    Cursor.Current = Cursors.Default;

    }

    }

    /// <summary>

    /// 解碼

    /// </summary>

    /// <param name="sender"></param>

    /// <param name="e"></param>

    private void button2_Click(object sender, EventArgs e)

    {

    Cursor.Current = Cursors.WaitCursor;

    Bitmap b = this.pictureBox1.Image as Bitmap;

    try

    {

    QRCodeDecoder decoder = new QRCodeDecoder();

    //解碼

    String decodedString = decoder.decode(new QRCodeBitmapImage(b));

    //顯示解碼信息

    this.lbl解碼信息.Text += decodedString ;

    }

    catch (Exception ex)

    {

    MessageBox.Show(ex.Message);

    }

    Cursor.Current = Cursors.Default;

    }

    private void Form1_Load(object sender, EventArgs e)

    {

    }

    }

    }

    ? vfp高手進(如何動態生成報表問題)

    一個簡易動態報表函數

    *作者:sj_sh
    *功能:根據當前工作區的表生成報表文件
    *調用方法:DYNAMICREPORT([[<報表文件名>],[<報表標題>]])
    *使用舉例:
    *USE MYTABLE
    *DYNAMICREPORT('MYREPORT','我的動態報表')
    *REPO FORM MYREPORT ......
    *或:
    *SELE ...... FROM MYTABLE INTO CURS TMP
    *DYNAMICREPORT(,'我的動態報表')
    *REPO FORM TMP_REPORT ......

    PARAMETERS 報表文件名,報表標題 &&報表文件名不帶擴展名,可缺省(缺省文件名為TMP_REPORT),報表標題可缺省
    PRIVATE ALL LIKE L_*
    WAIT '正在生成報表......' WINDOW NOWAIT NOCLEAR
    IF TYPE('M.報表文件名')='L' OR EMPTY(M.報表文件名)
    報表文件名='TMP_REPORT'
    ENDIF
    L_字符寬度9=625 &&FONTSIZE=9
    L_字符寬度9粗=729.167 &&FONTSIZE=9,粗體
    L_字符寬度16=1250 &&FONTSIZE=16(半角字符寬度為1250,半個全角字符寬度為1145.833,故由此算得標題居中位置并不準確)
    L_域控件寬度修正9=370 &&由“L_字符寬度9”算得域控件寬度需加上此數值,才能完整輸出
    L_帶區指示條高度=2083
    L_標題區高度=IIF(TYPE('M.報表標題')='L' OR EMPTY(報表標題),0,5000)
    L_頁標頭區高度=2400
    L_細節區高度=2400
    L_頁標頭區VPOS=L_標題區高度+IIF(L_標題區高度=0,0,L_帶區指示條高度)
    L_細節區VPOS=L_標題區高度+L_頁標頭區高度+IIF(L_標題區高度=0,1,2)*L_帶區指示條高度
    L_TMP=SYS(2015)
    L_CA=SELECT()
    COPY STRUCTURE TO (L_TMP) EXTE

    CREATE CURSOR TMP (TMPFIELD C(1))
    CREATE REPORT (報表文件名) FROM TMP
    USE 報表文件名+'.FRX' EXCL

    IF L_標題區高度#0
    *添加標題區
    INSERT BLAN
    REPLACE PLATFORM WITH 'WINDOWS',OBJTYPE WITH 9,HEIGHT WITH L_標題區高度
    ENDIF

    LOCATE FOR EXPR='_PAGENO'
    L_頁面寬度=HPOS+WIDTH

    *增高頁標頭區
    LOCATE FOR OBJTYPE=9 AND OBJCODE=1
    L_頁標頭區原高度=HEIGHT
    L_頁標頭區增高=L_頁標頭區高度-HEIGHT
    REPLACE HEIGHT WITH L_頁標頭區高度
    *增高細節區
    LOCATE FOR OBJTYPE=9 AND OBJCODE=4
    L_細節區原高度=HEIGHT
    L_細節區增高=L_細節區高度-HEIGHT
    REPLACE HEIGHT WITH L_細節區高度

    *標題區以下內容重定位
    LOCATE FOR OBJTYPE=5
    L_列標題高度=HEIGHT
    *修改頁注腳區內容垂直位置
    REPLACE VPOS WITH L_細節區VPOS+L_細節區高度+L_帶區指示條高度;
    FOR VPOS>L_頁標頭區原高度+L_帶區指示條高度+L_細節區原高度 AND INLIST(OBJTYPE,5,8)
    *修改細節區內容垂直位置
    REPLACE VPOS WITH L_細節區VPOS+L_細節區增高/2;
    FOR BETWEEN(VPOS,L_頁標頭區原高度,L_頁標頭區原高度+L_帶區指示條高度+L_細節區原高度)
    *修改頁標頭區內容垂直位置
    REPLACE VPOS WITH L_頁標頭區VPOS+L_頁標頭區增高/2;
    FOR VPOS<L_頁標頭區原高度 AND !INLIST(OBJTYPE,1,9)

    *修改頁注腳內容
    CALCULATE MAX(HPOS) TO L_MAX FOR OBJTYPE=5 AND TOP
    LOCATE FOR HPOS=L_MAX
    SCATTER MEMV MEMO
    REPLACE EXPR WITH ["第"],HPOS WITH L_頁面寬度-10*L_字符寬度9,WIDTH WITH 2*L_字符寬度9
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE EXPR WITH ["頁"],HPOS WITH L_頁面寬度-2*L_字符寬度9,WIDTH WITH 2*L_字符寬度9
    LOCATE FOR EXPR=[_PAGENO] AND TOP
    REPLACE HPOS WITH L_頁面寬度-8*L_字符寬度9,WIDTH WITH 5*L_字符寬度9
    LOCATE FOR EXPR=[DATE()] AND TOP
    REPLACE HPOS WITH HPOS+11*L_字符寬度9
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE EXPR WITH ["打印日期:"],HPOS WITH 0,WIDTH WITH 10*L_字符寬度9

    *添加列標題標簽控件、細節區域控件以及表格線
    *先保存報表中基于TMPFIELD字段的標簽控件和域控件記錄,作為生成各列的標題標簽控件和細節域控件的依據
    LOCATE FOR UPPER(EXPR)=["TMPFIELD"]
    SCATTER TO L_列標題記錄 MEMO
    DELETE
    LOCATE FOR UPPER(EXPR)=[TMPFIELD]
    SCATTER TO L_列細節記錄 MEMO
    DELETE
    PACK
    SELECT 0
    USE (L_TMP)
    L_報表寬度=0
    L_HPOS=0
    L_GAP=400 &&列與縱線之間的間隙
    *設置縱線屬性
    OBJTYPE=6
    EXPR=''
    WIDTH=104.167
    HEIGHT=L_細節區高度
    PENSIZE=1
    PENPAT=8
    MODE=0

    SCAN FOR FIELD_TYPE#'G' &&通用字段除外
    L_列標題=TRIM(FIELD_NAME)
    L_列標題寬=LEN(L_列標題)*L_字符寬度9粗
    L_列細節寬=FIELD_LEN*L_字符寬度9+L_域控件寬度修正9
    L_列寬=MAX(L_列標題寬,L_列細節寬)
    L_報表寬度=L_報表寬度+WIDTH+2*L_GAP+L_列寬
    L_類型=FIELD_TYPE
    IF L_報表寬度>L_頁面寬度
    EXIT
    ENDIF
    SELECT (報表文件名)
    添加縱線()
    L_HPOS=L_HPOS+WIDTH+L_GAP
    *添加列標題
    APPEND BLANK
    GATHER FROM L_列標題記錄 MEMO
    REPLACE EXPR WITH ["]+L_列標題+["],HPOS WITH L_HPOS,WIDTH WITH L_列標題寬
    *添加列細節
    APPEND BLANK
    GATHER FROM L_列細節記錄 MEMO
    REPLACE EXPR WITH L_列標題,HPOS WITH L_HPOS,WIDTH WITH L_列細節寬,FILLCHAR WITH CHRTRAN(L_類型,'YFTBIM','NNDNNC')
    IF FILLCHAR='N'
    REPLACE OFFSET WITH 1
    ENDIF
    L_HPOS=L_HPOS+L_列寬+L_GAP
    SELECT (L_TMP)
    ENDSCAN
    USE
    SELECT (報表文件名)
    添加縱線()
    L_報表寬度=L_HPOS+WIDTH

    *添加橫線
    HPOS=0
    HEIGHT=104.167
    WIDTH=L_報表寬度
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE VPOS WITH L_頁標頭區VPOS
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE VPOS WITH L_頁標頭區VPOS+L_頁標頭區高度
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE VPOS WITH L_細節區VPOS+L_細節區高度

    IF L_標題區高度#0
    *拷貝一個標簽記錄并改造成報表標題記錄
    LOCATE FOR OBJTYPE=5
    SCATTER MEMV MEMO
    L_標題寬度=LEN(M.報表標題)*L_字符寬度16
    EXPR=["]+M.報表標題+["]
    VPOS=1000
    HPOS=MAX(0,(L_報表寬度-L_標題寬度)/2)
    WIDTH=L_標題寬度
    HEIGHT=2500
    FONTSIZE=16
    APPEND BLANK
    GATHER MEMV MEMO
    ENDIF

    USE
    SELECT (L_CA)
    ERASE L_TMP+'.*'
    WAIT CLEA
    RETURN

    PROCEDURE 添加縱線
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE VPOS WITH L_頁標頭區VPOS,HPOS WITH L_HPOS
    APPEND BLANK
    GATHER MEMV MEMO
    REPLACE VPOS WITH L_細節區VPOS,HPOS WITH L_HPOS,STRETCH WITH .T.
    RETURN

    ? 如何在VFP中自動生成統計圖

    主要是(_GENGRAPH)過程沒有發現,你參考微軟的ffc
    就在vfp文件夾下,ffc文件夾下有一個graph.vcx.

    ? 怎樣用vfp生成.exe的文件

    項目的代碼-程序里編兩個程序,
    1、第一個命名為main,內容如下:
    _screen.caption="成績統計程序注冊碼生成器"
    *這里換成你想要在第一個表單上顯示的標題
    _screen.icon=""
    on shutdown do quit
    do form main
    *這里的main是你要最先運行的表單的名稱
    read events

    2、第二個命名為quit,內容如下:
    clear events
    quit

    3、然后在main程序文件上點右鍵,選“設置主文件”

    4、

    5、打開最先運行的表單(以下稱首頁),在屬性里設置這樣幾個值
    AlwaysOnTop .t.
    AutoCenter .t.
    BorderStyle 2-固定對話框
    MaxButton .f.
    ShowWindow 2-作為頂層表單

    6、其它的分頁表單屬性,前面4個屬性值相同,最后一個改為“1-在頂層表單中”。

    7、首頁的高(Height)和寬(width)在屬性中設大一點,如800*600,分頁的高和寬不要超過這個值就行。

    8、選中首頁表單的方法程序中的Unload Event這一項,雙擊,在里面輸入quit這句命令。

    9、關閉所有表單,打開項目設計器,點右邊的“連編”,然后勾選“選項”的前三項,“操作”為第三個“連編可執行文件”,最后點擊“確定”。

    ? vfp 菜單如何生成prg文件

    用菜單設計器設計好的菜單后綴名為.mnx在VFP主窗口上面的主菜單里生成后綴名為.mpr,才可以使用
    在命令窗口modify
    command
    菜單名.mpr
    按回車就會出現菜單的命令代碼,可以修改,可以復制到prg文件直接做程序調用。

    ? 如何用vfp制作計算器

    1、打開VFP,文件——新建——表單——新建立文件

    lable1在屬性中設置它的caption屬性為"前項"
    lable2在屬性中設置它的caption屬性為"后項"
    lable3在屬性中設置它的caption屬性為"結果"
    text1、text2、text3不用設置
    optiongroup1的生成器:
    command1在屬性中設置它的caption屬性為“計算”
    command2在屬性中設置它的caption屬性為“退出”
    3、接著將屬性擺好;

    4、接著雙擊command1,輸入click代碼:
    a=val(alltrim(thisform.text1.value)) &&去除前后空格,并將字符型數據轉換為數值型數據
    b=val(alltrim(thisform.text2.value)) &&由于文本框默認的數據類型是字符型,所以要轉換
    if thisform.optiongroup1.value=1
    thisform.text3.value=a+b
    endif
    if thisform.optiongroup1.value=2
    thisform.text3.value=a-b
    endif
    if thisform.optiongroup1.value=3
    thisform.text3.value=a*b
    endif
    if thisform.optiongroup1.value=4
    thisform.text3.value=a/b
    endif

    command2代碼:
    thisform.release
    5、運行,計算器就實現了。

    ? 請問怎么畫股票價格走勢線與收益線,或者有這方面的軟件能直接看嗎600031的能幫忙畫下么

    你要是想知道股票怎么樣,每個人有每個人的方法,沒聽說過走勢線怎么畫。走勢線
    是什么呢?你要是都不會畫,別人劃了你也看不明白。
    我只說說我對這只股票的看法,技術圖形很好,長期均線多頭排列,大趨勢很好
    短期均線交織,在60日均線站穩,并往上走,前期整理的很平,在布林線下軌反彈的
    也不錯,后面有到上軌的欲望。

    ? VFP怎么生成exe格式并在沒有VF的環境下運行

    問題描述的不清楚。
    如果做好了程序只要打包生成exe,那需要用到
    installshield
    軟件;
    如果是打包好了,程序運行有問題,你就要檢查你的程序邏輯,看看你的主程序文件的邏輯;
    請描述清楚具體貼出代碼才好分析

    ? 可以用vfp程序獲取分析實時股票數據嗎

    用vfp系統只能調用vfp系統的文件dbf ,也可以從其它文件調入數據, 因VFP系統屬于小型單單機數據庫,許多股票數據基本上網絡大型數據庫 如ms sql 數據庫系統互相不兼容,數據不識別。

    ? 可以用vfp程序獲取分析實時股票數據嗎

    當然可以,只要對使用的編程軟件精通,用什么編程軟件都可以實現。

    MM131美女爱做视频免费