[ C# / Java ] — начинающим: задаем вопросы

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by procedure, 2 Nov 2008.

  1. Karxar

    Karxar New Member

    Joined:
    20 Oct 2010
    Messages:
    13
    Likes Received:
    1
    Reputations:
    0
    а не просто ли создать глобального переменного и присвоить значения и uset его
     
  2. Motaro

    Motaro New Member

    Joined:
    15 Jul 2011
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    POST запрос не возвращает данные. После передачи параметров должна возвратиться страница sinonimus.ru/index.php/index.php#final_text с таблицей синонимов вместо этого возвращается стартовая и пустая. Прилагаю код ,помогите разобраться. В коде использую библиотеку XNet.
    Возможно вы знаете более эффективный код для запросов на подобные сайты.

    public string PostWebHTML(string regword)
    {



    using (var request = new HttpRequest())
    {

    request.UserAgent = HttpHelper.ChromeUserAgent();
    CookieDictionary cookie = new CookieDictionary(false);
    request.Cookies = cookie;


    request.Referer = "http://sinonimus.ru";
    request.KeepAlive = true;


    var reqParams = new RequestParams();

    reqParams["slovo"] = HttpHelper.UrlEncode(regword);
    reqParams["sin_dict=all"] = "all";




    string content = request.Post("http://sinonimus.ru/index.php", reqParams).ToString();

    return content;

    }



    }
     
  3. blackbox

    blackbox Elder - Старейшина

    Joined:
    31 Dec 2011
    Messages:
    362
    Likes Received:
    62
    Reputations:
    11
    Как по-человечески отправить структуру через TcpClient серверу?
    UPD: Можно в общем-то так:
    Code:
    NetworkStream nws = client.GetStream();
    BinaryWriter bw = new BinaryWriter(nws);
    BinaryReader br = new BinaryReader(nws);
    byte[] buff = new byte[512];
    
    send_packet pkt = new send_packet();
    pkt.magic = magic;
    pkt.cmd = (int)command.MOVE_MOUSE;
    while (true)
    {
      
        bw.Write(pkt.magic);
        bw.Write(pkt.cmd);
    ...
     
    #1703 blackbox, 14 Nov 2015
    Last edited: 16 Nov 2015
  4. Vasek13

    Vasek13 Banned

    Joined:
    13 May 2009
    Messages:
    0
    Likes Received:
    2
    Reputations:
    -5
    День добрый, возможно написать скрипт в java, который бы работал из адресной строки и выполнял автоматическое нажатие кнопки "отправить" в заданное время? Речь идет об отправки сообщений вконтакте. Заранее спасибо
     
  5. Ins3t

    Ins3t Харьковчанин

    Joined:
    18 Jul 2009
    Messages:
    939
    Likes Received:
    429
    Reputations:
    139
    возможно
     
    NetSter likes this.
  6. Vioc

    Vioc New Member

    Joined:
    30 Nov 2015
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Может кто помочь с C++ на Java переписать код?(там простенькая игра. но реализация интерфейса)
     
  7. Begi_Ed

    Begi_Ed New Member

    Joined:
    5 Dec 2015
    Messages:
    3
    Likes Received:
    0
    Reputations:
    0
    Доброго времени суток, написал свой проект с помощью ООП на C#, когда редактировал класс, натворил фигни и пришлось его удалить. Потом из Бэкапа копировал тот же код, но в уже новый созданый класс. Затем я подключили юзинги и мне выбило 30 ошибок, но подчеркунутых синим цветом. Если я пытаюсь запустить програму и игнорирую предупреждения - прога пашет, но вот вносить в нее изменения могу, а когда запускаю ничего не меняется, тоесть изменения не сохраняются.Ах да забыл, подчеркивает преимущественно самописные методы. КТо шарит, что с этим делать, как решить проблему?
     
  8. Улыбайся

    Joined:
    23 Oct 2011
    Messages:
    71
    Likes Received:
    7
    Reputations:
    3
    Почему может быть такая ошибка? c#
    Имя типа или пространства имен "Text" отсутствует в пространстве имен "xNet" (пропущена ссылка на сборку?)
    Имя типа или пространства имен "Text" отсутствует в пространстве имен "xNet" (пропущена ссылка на сборку?)
     
  9. blackstrip

    blackstrip Member

    Joined:
    2 Feb 2016
    Messages:
    12
    Likes Received:
    5
    Reputations:
    0
    Обычно это из-за того что не подключен модуль с этим классом/типом Text внутри. Скорее всего, поможет такая последовательность
    1) Project > AddReference (Проект > Добавить ссылку) с выбором твоего этого модуля xNet
    2) добавление модуля xNet.Text в список using в самом верху исходного кода.

    А вообще если ввести в гугл "Имя типа или пространства имен отсутствует в пространстве имен (пропущена ссылка на сборку?)", то можно увидеть много интересного на эту тему)
     
    NetSter likes this.
  10. недохакер

    недохакер New Member

    Joined:
    11 Sep 2013
    Messages:
    14
    Likes Received:
    0
    Reputations:
    0
    Подскажите как изменить код, если сайт раньше работал на http, а сейчас перешел на https с небольшими изменениями в структуре сайта и запросы не проходят, хотя реферер и пост данные я поменял?
    Code:
    using System.Text.RegularExpressions;
    using xNet.Net;
    
    class Checker {
    
        public static string Check(string name, string pass) {
    
            try {
                using (var req = new HttpRequest())
                {
    
                    while (true) {
                        try {
    
                            string proxy = Engine.GetProxy();
    
                            switch (GVars.ProxyType) {
                                case 0:
                                    req.Proxy = HttpProxyClient.Parse(proxy);
                                    break;
                                case 1:
                                    req.Proxy = Socks4ProxyClient.Parse(proxy);
                                    break;
                                case 2:
                                    req.Proxy = Socks5ProxyClient.Parse(proxy);
                                    break;
                                default:
                                    req.Proxy = HttpProxyClient.Parse(proxy);
                                    break;
                            }
    
                            req.Proxy.ConnectTimeout = GVars.TimeOut * 1000;
                            req.Proxy.ReadWriteTimeout = req.Proxy.ConnectTimeout;
                            req.UserAgent = HttpHelper.ChromeUserAgent();
    
                            HttpResponse resp;
    
                            req.Referer = "http://сайт/";
                            req.AddParam("data", "action=user_login&module=login&page=home&user="+name+"&pass="+pass);
                            resp = req.Post("http://сайт.php");
                            if(resp.ToString().Contains("Logout"))
                            {
                                return "good";
                            }
                            else
                            {
                                return "bad";
                            }
                            // конец запроса
                        }
                        catch { GVars.Error++; }
                    }
                }
            }
            catch { return "error"; }
        }
    }
     
  11. Console_

    Console_ Member

    Joined:
    12 Sep 2016
    Messages:
    11
    Likes Received:
    8
    Reputations:
    0
    resp = req.Post("http://сайт.php"); Вот здесь нужно заменить http:// на https://
    Либо, если у сайта стоит редирект со старой версии на новую, то задать атрибут req.AllowAutoRedirect = true;
     
  12. I am engineer

    I am engineer New Member

    Joined:
    27 Jul 2015
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Такой вопрос:
    у меня есть основной класс, в котором описано текстовое поле textpane на форме, есть другой класс в котором есть списки( jList ), содержащие в себе шрифты, начертание и размеры. В итоге в форме первого класса я нажимаю кнопку "шрифт", открывается форма второго класса со списками, я выбираю необходимые параметры шрифта и .... самое интересное... по кнопке ОК все должно записаться в переменную типа Font(например: Font selectedFont) и каким то образом отправиться в первый класс в аргумент к textPane.setFont(selectedFont). Помогите, научите как это сделать? :) Не получается по кнопке ОК второго класса(вторая форма) обратиться к объекту с первого класса(первой формы) чтобы назначить ему шрифт и закрыв вторую форму остаться на первой и продолжить работу с текстовым полем(например продолжить набирать в ней текст).
    Чтобы было более понятно, что именно хочется сделать, можно открыть виндовый блокнот, там есть опция "шрифт", соответственно сам блокнот это первая форма, опция Шрифт это вторая форма... пытаюсь реализовать то же самое у себя
     
  13. r0

    r0 Elder - Старейшина

    Joined:
    17 Jul 2005
    Messages:
    450
    Likes Received:
    149
    Reputations:
    147
    Если я верно Вас понял, то необходимо у каждого класса создать public-свойства, которые будут вызываться и изменять нужные данные (какие данные изменить - решить Вам). Но лучше увидеть 1 раз код..
    Возможно стоит также присмотреться к с-ву формы Owner (Form.Owner)
    Также почитайте подробно про делегаты. Надеюсь натолкнул на что-то
     
  14. I am engineer

    I am engineer New Member

    Joined:
    27 Jul 2015
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    Код основной формы приложения (основные моменты: меню "шрифт" вызывает форму выбора шрифта (возможно код работать не будет т.к. излишки удалял на глазок) )
    Code:
    public class MainFrame extends JFrame {
    
    
        public static String filePath = null;        //переменная, которая будет хранить в себе адрес и имя открываемого файла
        public static JPanel contentPane;
        public static String noFileTitleText = "Безымянный";
        public static String titleText = "MyNotepad v.1.2";
        public static JTextPane textPane;
        public static Font sFont;
    
        public static void main(String[] args) {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());   
            } catch (ClassNotFoundException e1) {
               
                e1.printStackTrace();
            } catch (InstantiationException e1) {
               
                e1.printStackTrace();
            } catch (IllegalAccessException e1) {
               
                e1.printStackTrace();
            } catch (UnsupportedLookAndFeelException e1) {
               
                e1.printStackTrace();
            }
            JFrame.setDefaultLookAndFeelDecorated(true);
           
            EventQueue.invokeLater(new Runnable() {           
                public void run() {                           
                    try {
                        MainFrame frame = new MainFrame();
                        frame.setLocationRelativeTo(null);                   
                        frame.setVisible(true);
                        //frame.setIconImage(new ImageIcon("C:\\Images\Icon.png").getImage());        //Установка иконки приложения
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });
        }
       
       
        /**
         * Создание frame.
         */
        public MainFrame() {
               
            setTitle(noFileTitleText + " - " + titleText);
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setBounds(0, 0, 750, 600);
            //setSize(770, 600);
           
             final JTextPane textPane = new JTextPane() {
               
                //    public static final long serialVersionUID = 1;
                    public boolean getScrollableTracksViewportWidth() {
                        return true;
                    }
                };
                sFont = new Font("Tahoma", Font.PLAIN, 18);
                textPane.setFont(sFont);   
                   
    
            JMenuBar menuBar = new JMenuBar();
            setJMenuBar(menuBar);
    
            JMenuItem menuItemExit = new JMenuItem("Выход");
            menuItemExit.setIcon(new ImageIcon(MainFrame.class.getResource("/images/menuIcons/menu_exit.png")));
            menuItemExit.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                   
                    System.exit(0);
                }
            });
           
           
            final JPanel contentPane = new JPanel();
            contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
            setContentPane(contentPane);
            contentPane.setLayout(null);   
           
           
           
            JMenu MainMenu = new JMenu("Файл");
            menuBar.add(MainMenu);
                   
            final JScrollPane scrollPane = new JScrollPane(textPane);
            scrollPane.setLocation(0, 0);
            scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
            scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
            scrollPane.setSize(734,541);
            contentPane.add(scrollPane);
           
    
           
            JMenu menuFormat = new JMenu("Формат");
            menuBar.add(menuFormat);
    
           
            JMenuItem menuItemFont = new JMenuItem("Шрифт");
            menuItemFont.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
            try {   
           
                fc fc = new fc();
                fc.setVisible(true);
               
                }
                catch (Exception e1) {
                    e1.printStackTrace();
                }
                }
            });
            menuFormat.add(menuItemFont);
    }
    Код второй формы - выбор шрифта(основной момент: создание переменной типа Font и записи в нее значений выбранных из списков, переменную типа Font надо передать в первую форму и применить к текстовому полю.... не получается :( )
    Code:
    public class fc extends JDialog {
    
        private JPanel contentPane;
       
        String[] fontNames;
       
        String family;          //имена шрифтов
        int style;                 //стиль начертания шрифта
        int size;                //размер шрифта
        public static Font selectedFont;        //Шрифт, которому они соответствуют(3 параметра выше)
    
       
        public Integer Sizes[] = {8, 10, 11, 12, 14, 16, 18, 20, 24, 30, 36, 40, 48, 60, 72};         //список всевозможных размеров шрифта
    
        static final String styleNames[] = new String[] {"Plain", "Bold", "Italic", "BoldItalic"};         //Названия начертаний из меню "Style"
       
        static final Integer[] styleValues = new Integer[] {new Integer(Font.PLAIN), new Integer(Font.ITALIC),
                new Integer(Font.BOLD), new Integer(Font.BOLD + Font.ITALIC)};        //Значения, соответствующие различным названиям
       
        JLabel lblPreviewText;       
        JList fontList;
    
        /**
         запуск
         */
        public static void main(String[] args) {
            try {
                UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());   
            } catch (ClassNotFoundException e1) {
               
                e1.printStackTrace();
            } catch (InstantiationException e1) {
               
                e1.printStackTrace();
            } catch (IllegalAccessException e1) {
               
                e1.printStackTrace();
            } catch (UnsupportedLookAndFeelException e1) {
               
                e1.printStackTrace();
            }
            JFrame.setDefaultLookAndFeelDecorated(true);
            EventQueue.invokeLater(new Runnable() {
                public void run() {
                    try {
                        fc fc = new fc();
                        fc.setLocationRelativeTo(null);
                        fc.setVisible(true);
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                }
            });
        }
    
        /**
         *Создание frame.
         */
        public fc() {
            //setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setBounds(100, 100, 471, 392);
            contentPane = new JPanel();
            contentPane.setLayout(null);
            setContentPane(contentPane);
            setModal(true);
            setTitle("Шрифт");
            setResizable(false);
            setLocationRelativeTo(null);
           
            //Выясняем, какие шрифты доступны в системе
            GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
            fontNames = env.getAvailableFontFamilyNames();
           
    
            //Устанавливаем начальные значения свойств       
            style = Font.PLAIN;
            size = 14;
            selectedFont = new Font(family, style, size);
           
           
            JScrollPane scrollPane = new JScrollPane(fontList);
            scrollPane.setBounds(33, 31, 165, 201);
            contentPane.add(scrollPane);
            scrollPane.setViewportView(fontList);
    
           
            JButton btnOk = new JButton("OK");
            btnOk.addActionListener(new ActionListener() {
               
                public void actionPerformed(ActionEvent e) {
               
                    MainFrame.textPane.setFont(selectedFont);
                    dispose();                                           
               
                }
            });
            btnOk.setBounds(237, 316, 89, 29);
            contentPane.add(btnOk);
           
            JButton btnCancel = new JButton("Отмена");
            btnCancel.addActionListener(new ActionListener() {
                public void actionPerformed(ActionEvent e) {
                   
                    dispose();                                            //Закрытие окна выбора шрифтов, без закрытия всего приложения
                }
            });
            btnCancel.setBounds(342, 316, 89, 29);
            contentPane.add(btnCancel);
    
        }
       
    }
     
  15. I am engineer

    I am engineer New Member

    Joined:
    27 Jul 2015
    Messages:
    4
    Likes Received:
    0
    Reputations:
    0
    нашел ошибку: вместо final JTextPane textPane = new JTextPane(), надо было указывать просто textPane = new JTextPane(). Получается я создавал новый экземпляр текстового поля, он был не доступен другому классу. А тот который был доступен, не имел по сути физической реализации...
     
  16. Vovo4ka

    Vovo4ka Member

    Joined:
    24 Nov 2016
    Messages:
    44
    Likes Received:
    8
    Reputations:
    0
    С траблой разобрался.
     
    #1716 Vovo4ka, 1 Dec 2016
    Last edited: 2 Dec 2016
  17. Vovo4ka

    Vovo4ka Member

    Joined:
    24 Nov 2016
    Messages:
    44
    Likes Received:
    8
    Reputations:
    0
    Всё, с проблемой выше разобрался. Однако возникла другая - корректен ли этот кусок кода:
    Code:
    using (var request = new HttpRequest())
                {
                var urlParams = new RequestParams();
    
                urlParams["info_head1"] = "inf_payload1";
                urlParams["info_head2"] = "inf_payload2";
    
                string content = request.Get("некий_домен.ru", urlParams).ToString();

    Т. к. я, послав GET запрос с помощью этого кода на домен, в логах запрос не нашёл.
     
  18. triblekill

    triblekill Member

    Joined:
    21 Aug 2011
    Messages:
    351
    Likes Received:
    94
    Reputations:
    1
    Как можно получить значение text по найденному классу ?
    Code:
    document.getElementsByClassName("login-input")[0].get.text;
     
  19. Hazel

    Hazel New Member

    Joined:
    19 Feb 2017
    Messages:
    1
    Likes Received:
    0
    Reputations:
    0
    Короче, такая фигня
    Есть форма, на ней picturebox, в котором открывается изображение по openfiledialog и уберфича для 1970 года-поворот изображения, НО! Проблема с поворотом широкоформатных изображений-либо обрезается при повороте на 90%, либо просто шакально сжимается
    Колдовал с autosize и pictureboxsize и все такое, но к желаемому результату не пришел

    Вот, собственно, кусок кода, отвечающий за поворот
    Code:
    pictureBox1.Image.RotateFlip(RotateFlipType.Rotate90FlipNone);
    pictureBox1.Refresh()
    С остальным проблем нет, не считая функции увеличения-уменьшения, но сперва надо с поворотом разобраться
     
  20. SooLFaa

    SooLFaa Members of Antichat

    Joined:
    17 Mar 2014
    Messages:
    530
    Likes Received:
    499
    Reputations:
    154
    Хотя это и не шарп а JS
    Ваш вопрос уже содержит ответ? getter необязтаельно '
    document.getElementsByClassName('asd')[0].textContent
     
    _________________________
Loading...
Similar Threads - Java начинающим задаем
  1. b3
    Replies:
    4
    Views:
    3,216